«lifetime» 태그된 질문


2
같은 구조체에 값과 해당 값에 대한 참조를 저장할 수없는 이유는 무엇입니까?
나는 가치가 있고 그 가치와 그 가치 내부에 대한 참조를 내 유형으로 저장하고 싶다. struct Thing { count: u32, } struct Combined<'a>(Thing, &'a u32); fn make_combined<'a>() -> Combined<'a> { let thing = Thing { count: 42 }; Combined(thing, &thing.count) } 때로는 값이 있고 해당 값과 해당 값에 대한 참조를 동일한 …


1
비 어휘 수명이란 무엇입니까?
Rust는 오랫동안 언어로 구현 되도록 승인 된 비 어휘 수명과 관련된 RFC 를 가지고 있습니다. 최근 에이 기능에 대한 Rust의 지원은 많이 향상되었으며 완전한 것으로 간주됩니다. 제 질문은 비어 휘적 수명이란 정확히 무엇입니까?

9
C에서 문자열 리터럴의 "수명"
다음 함수에서 반환 된 포인터에 액세스 할 수 없습니까? char *foo(int rc) { switch (rc) { case 1: return("one"); case 2: return("two"); default: return("whatever"); } } 따라서 C / C ++에서 지역 변수의 수명은 실제로 함수 내에서만 가능합니다. 즉, char* foo(int)종료 후 반환되는 포인터는 더 이상 아무것도 의미하지 않습니다. 지역 …

1
자체 이니셜 라이저에서 변수 사용
C ++ 20 표준 초안의 [basic.scope.pdecl] / 1 은 다음과 같은 (비 규범 적) 예제를 주 ( 풀 요청 3580 의 병합 이전의 부분 인용 ,이 질문에 대한 답변 참조)에 있습니다. unsigned char x = x; [...] x는 자체 (결정되지 않은) 값으로 초기화됩니다. 이것이 실제로 C ++ 20에서 잘 정의 …

1
C ++ 20 이후 할당 된 스토리지에서 포인터 산술이 허용됩니까?
C ++ 20 표준에서는 배열 유형이 암시 적 수명 유형이라고 합니다. 암시 적이 지 않은 수명 유형에 대한 배열을 암시 적으로 만들 수 있습니까? 이러한 배열의 암시 적 생성으로 인해 배열 요소가 생성되지 않습니까? 이 경우를 고려하십시오. //implicit creation of an array of std::string //but not the std::string elements: void …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.