名前空間でのマクロの使用に問題があります。コードは
#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;
}
マクロで名前空間付きオブジェクトを使用する適切なバリアントは何ですか?