다음을 통해 공유


경고 C26405

유효한 상태에 있을 수 있는 할당 안 owner<T> 함(r.3)

설명

소유자 포인터가 이미 유효한 메모리 버퍼를 가리키는 경우 현재 리소스를 먼저 해제하지 않고 다른 값에 할당하면 안 됩니다. 이러한 할당은 리소스 주소가 일부 원시 포인터로 복사되는 경우에도 리소스 누수로 이어질 수 있습니다(원시 포인터는 리소스를 해제해서는 안 되므로). 자세한 내용은 C++ 핵심 지침을 참조 하세요.

코드 분석 이름: DONT_ASSIGN_TO_VALID

예 1

루프에서 소유자 덮어쓰기:

gsl::owner<Shape*> shape = nullptr;
while (shape = NextShape()) // C26405
    Process(shape) ? delete shape : 0;