네임 스페이스에 매크로를 사용하는 데 문제가 있습니다. 코드는 매크로에서 네임 스페이스 개체를 사용하여 적절한 변형 무엇C++ 매크로 및 네임 스페이스
#include <iostream>
namespace a
{
#define MESSAGE_A(message) \
std::cout << (message) << std::endl;
}
#define MESSAGE_A(message) \
std::cout << (message) << std::endl;
int main()
{
//works fine
MESSAGE_A("Test");
//invalid
a::MESSAGE_A("Test")
return 0;
}
입니다.
해결 방법 솔루션에 도움이 될 수 있습니다. 내 프로젝트에서 네임 스페이스에 매크로를 사용해야하고 다른 네임 스페이스에서 매크로를 호출해야합니다. – shadeglare
@MaxFX, 매크로는 "호출"되지 않으며 대체됩니다. 지나치게 복잡한 것에 매크로를 사용해야 할 경우, 뭔가 잘못하고있는 것입니다. – StoryTeller