貌似没说清楚,举个例子:
实现代码如下:
#include <iostream>
using namespace std;
#define P(EX) cout<<#EX<<":"<<EX<<endl;
int main()
{
int a[10];
for (int i = 0; i < 10; i++)
a[i] = i;
int *ip = a;
P(*ip);
P(*++ip);
P(*(ip+5));
int *ip2 = ip + 5;
P(*ip2);
P(*(ip2 - 4));
P(*--ip2);
P(ip2-ip); //指针相减,注意:指针之间不能相加
return 0;
}
执行一下,看看效果,不用我们屡次写cout<<"*(ip2 - 4)"<<":"<<*(ip2 - 4)<<endl;这些字符串了。尽管Effective C++建议尽量用const和inline而不用#define,即“尽量用编译器而不用预处理”,因为#define经常被认为好象不是语言本身的一部分。但我们在不干扰自己程序的情况下,用一用也无妨。
以上就是【C++中“#”号的使用技巧】的全部内容了,欢迎留言评论进行交流!