![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
城南花已开.jpg
这个作者很懒,什么都没留下…
展开
-
为何static不能在类中定义而static const却能在类中定义?
有时候类会声明在头文件中,static 成员变量是属于类的而不属于类实例化的对象,所以若在类中定义static成员变量就与不能在头文件中定义变量的规则冲突。但是为什么static const却能在类中定义呢?因为static const 成员变量会被编译器优化,为编译期常量,编译器不会为其分配内存,更像是宏定义那样,在编译期时,在使用它的地方,用它的值替换它,这一点可以通过代码看到,若我们在类中定义一个static const 成员变量,我们可以打印出它的值,却不能打印出它的地址,因为编译器并没有给它分配内原创 2020-08-10 12:30:27 · 680 阅读 · 1 评论 -
为何不能根据返回值类型不同来触发重载
因为有时在一段代码中返回值不能唯一标识一个函数。因为返回值只是调用者和被调用者的通信方式,有时我可以不接受返回值。例如以下代码:int func(int a,int b);bool func(int a,int b);int main(void){ func(a,b); return 0;}你觉得会调用那个?编译器:这是在为难我胖虎 ????????????...原创 2020-03-17 23:07:29 · 248 阅读 · 0 评论