1
일반적으로 참조가 함수에서 반환되면 반환 변수는 valuetype입니다.복사 ctor가없는 참조 반환
질문 변수가 이미 참조 변수 인 것은 허용됩니까?
아래 코드를 참조하십시오. 나는 (명시 적으로 myObject에 대한 삭제) 복사 ctor에
myObject& foo()
{
for(auto iter = myMap.begin();
iter != mymap.End();
++iter)
{
if(trueCondition)
{
//iter->second is
// shared_ptr<myObject>
myObject& toBeReturned= *(iter->second);
return toBeReturned;
}
}
throw std::exception("");
}
참조를 반환 할 수 있습니다. 참조가 반환되는 객체의 수명을 적절하게 관리해야한다는 것을 기억해야합니다. – paweldac