클래스 "Foo"가 정의 된 헤더 파일 (원시, 타사)을 포함하는 C++/CLI 파일을 컴파일하려고합니다. 또한 나는 C# dll을 #using "Bar.dll"을 통해 사용하고 있는데 여기서 네임 스페이스 "Foo"가 정의되어있다. 컴파일러에서 오류 C2872 "Foo is ambiguous symbol"을 표시합니다.C++/CLI - 네임 스페이스 및 클래스의 모호한 기호
네임 스페이스 네이티브 클래스 "Foo"는 헤더 파일의 클래스 정의가 특정 네임 스페이스에 중첩되어 있지 않음을 알지 못합니다. 그래서 나는 "Foo"클래스가 네임 스페이스에 없을 수도 있다고 가정합니다 (C++에서 가능합니다, 그렇지 않습니까?). 그렇지 않으면 네임 스페이스로 클래스 "Foo"를 지정하여 컴파일러에 맞게 지정합니다.
"Bar.dll"에 사용 된 "Foo"네임 스페이스의 이름을 바꿀 수 있지만 네임 스페이스를 유지할 다른 솔루션을 찾고 있습니다. 실제로 클래스와 네임 스페이스는 다른 요소입니다. 그러나 C++/cli 컴파일러에서는 그렇지 않습니다. 사전에
이들으 Michbeck
예, thx - typedef가 작동합니다! 인사 – Michbeckable