各位高人,现在有这样一点小程序在VC下编译不过,请指教!#define MACRO_TEST(arg) MyTest(arg);
void CTest1Dlg::OnButton1()
{
// TODO: Add your control notification handler code here
MACRO_TEST((#if defined(_aaa_)
1
#else
2
#endif))
}void MyTest(int a)
{
...;
}
执行编译后的错误提示为:
error C2121: '#' : invalid character : possibly the result of a macro expansion
虽然可以改成
#if defined(_aaa_)
MACRO_TEST(1)
#else
MACRO_TEST(2)
#endif
就可以解决问题,但是我想知道有没有其他的解决办法,特别是不要把#if移到外面来。
先谢了!
void CTest1Dlg::OnButton1()
{
// TODO: Add your control notification handler code here
MACRO_TEST((#if defined(_aaa_)
1
#else
2
#endif))
}void MyTest(int a)
{
...;
}
执行编译后的错误提示为:
error C2121: '#' : invalid character : possibly the result of a macro expansion
虽然可以改成
#if defined(_aaa_)
MACRO_TEST(1)
#else
MACRO_TEST(2)
#endif
就可以解决问题,但是我想知道有没有其他的解决办法,特别是不要把#if移到外面来。
先谢了!
解决方案 »
- vc++6.0的控件工具箱被我弄不见了
- 求救 directShow 参考时钟 速率同步
- 求助:高手进来指条明路。
- VC.net中用ODBC连接数据库问题
- 分享《Programming Windows, Fifth Edition》Windows编程,包括原版、中文版、源码,对Win32编程感兴趣的朋友欢迎来下载!
- 如何将vc6.0编辑背景界面设置成其他颜色??
- 怎样拦截系统键盘消息?
- 可追加高分! 我重载了对话框的pretranslatemessage消息, 想阻止键盘消息传递到窗口的其它控件中.该如何做?
- 动态生成数据管道
- 请教一下jsoncpp怎么释放解析后的资源呢?
- 新手关于ActiveX的问题 在线等~
- BSTR转化为char*时的链接库问题
#if defined(_aaa_)
i=1
#else
i=2
#endifMACRO_TEST(i);
#if defined(_aaa_)
1
#else
2
#endif
)
(
#if defined(_aaa_)
1
#else
2
#endif
)
)
当函数使用就可以了。
#要是第一个字符,空格Tab除外