다음은 정적 멤버 함수 인 내부 (헤더 파일 내부에 정의 됨)입니다. 리터럴 문자열 "MyClass"는 항상 정적 메모리에 보장됩니까? 그렇지 않다면 스택에 포인터를 반환하지 않겠습니까?다음과 같이 정의되지 않은 동작이 있습니까?
const char * className()
{
return "MyClass";
}
편집 :이 약
어떻게?
const RWCString& className()
{
return "MyClass";
}
RWCString
는 const char*
취하는 암시 생성자를 갖는 스트링 클래스이다. http://www.roguewave.com/portals/0/products/sourcepro/docs/11/html/toolsref/rwcstring.html
'RWCString'에 대해서 들어 본 적도 없다 ... XD하지만 생성자가 처리해야하므로 괜찮다고 가정합니다. – Mysticial
@Mysticial하지만이 함수는 암시 적 costructor를 사용하여 각 호출마다 새로운 RWCString을 만듭니다. className()을 호출 할 때마다 새로운 참조 – onof
이 반환됩니다. 내 의견은 당신이 그처럼 참고로 돌아갈 수 없기 때문에 잘못되었습니다. – Mysticial