大家在题解中应该看过类似的代码吧
更加方便的【类型】
#define ll long long
#define db double
你觉得有什么用?其实,敲N遍long long还有 double会很累,那么你可以用上述代码代替,以后只要敲两个字母就行了!既方便又简单!
新方法定义【变量】
#define MAXN 0x7f
使用define也可以定义变量,你想到了吗?在程序中使用MAXN会替换成0x7f(127)
【函数】定义法
#define Add(a,b) a+b;
这样定义函数减少了一些代码量,但是,这里有个缺陷
cout<<Add(1,2);
这样做肯定没问题,但是
cout<<Add(1,2)*3;
有问题,因为define不完全是定义函数,而是替换,所以,会将原式替换成1+2X3=7(怎么算的不用讲了吧),但是照理来说应该是(1+2)X3=9,所以有问题。
函数出了单行,还可以多行定义,但是仅仅是直接替换的过程。
总结:define很好用,让代码简洁,写代码方便,拿#define a b来说,作用是替换a为b,但是如果要计算则在替换后按照基本原则算,方法不变,这也是define一大缺陷。