C의 임시 개체 삭제
C에서는 식을 평가하는 동안 요청에 따라 임시 개체가 생성됩니다. 이러한 개체는 표현식의 범위 내에서만 존재하며 표현식이 끝난 후 자동으로 삭제됩니다.
3개의 코드 줄이 포함된 다음 예를 고려하세요.
Foo foo{"three"}; Foo{"one"}; std::cout << "two" << '\n';
코드는 "one", " 둘', '셋' 순으로요. 이 동작은 임시 개체 삭제를 관리하는 다음 규칙에서 발생합니다.
식 평가 종료 시 삭제
임시 개체는 전체 식 평가가 완료되면 삭제됩니다. 그들은 창조되었습니다. 이 예에서 "1"과 "3"에 대한 임시 개체는 해당 줄이 위치한 후에 삭제됩니다.
규칙 예외
임시 개체 동안 소멸은 일반적으로 이 규칙을 따르며 [class.temporary]에 설명된 대로 특정 예외가 존재합니다. p4-p7:
제공된 예에서는 이러한 예외가 적용되지 않으므로 임시 개체는 해당 줄 다음에 삭제되어 지정된 출력이 생성됩니다.
위 내용은 C에서 임시 개체는 언제 삭제됩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!