概述:
1. 带参宏定义跟前面文章有所区别,不是简单的数值或者字符串替换,是要进行参数替换。
2. 本人理解,带参宏是很方便的,一些固定输入和输出咱们可以选择带参宏,类似工程中多出要计算两数相乘,这种情况我们就可以使用带参宏。
代码示例:
#define S(a,b) a*b
qDebug() << S(2,3);
//6
#define PI 3.1415926
#define S(r) PI*r*r
qDebug() << S(2);
//12.5664
#define PI 3.1415926
#define Create(R,L,S,V) L=2*PI*R; S=PI*R*R; R=L*S*R; V=4.0/2.0*PI*R*R;
int a=2,b=3,c=4,d=5;
Create(a,b,c,d);
qDebug() << a<< b << c << d;
//288 12 12 521152
说明:
1 通过以上两种形式我们可以演变很多种带参宏,这里说明一点,如果带参宏比较复杂一定利用()来区分好优先级。
2. 我们也可以通过这样的宏得到多个结果,所以说明宏还是非常强大的,大家可以试利用宏自动创建set函数和get函数,下篇文章我们分享。
over:
欢迎大家关注作者在文末评论、点赞、转发以及批评指正!
如果大家有更好的方法或有问题可以在文末评论一起讨论!
共同学习!
共同进步!
文末一句话:
“越朴素单纯,就越有内在的芳香。”