C++
碧海蓝天~
向往自由,在程序中遨游
展开
-
VS2015 Qt不自动生成moc文件的最终解决方法
其实没有自动生成moc是QT插件对文件管理做了优化,不再自动生成moc,想要自动生成moc文件,并将moc自动加载到过滤器,如果要解决有两种办法, 第一种办法:选择要生成moc的头文件,右键属性,将规格中改为“自定义生成工具",再填写自动生成工具 中的一些属性,具体方法可以参考其他人写的解决方案,这种方法网上比较多,很容易找到。 第二种办法,这是我比较推荐的办法,也很简单,只需要重新安装Qt插件,只不过在你重新安装Qt插件后还会有同样的问题,这是因为你没有用对版本, 只有当你的Qt插件版本在2.0.0以下.原创 2022-01-11 10:30:57 · 2162 阅读 · 0 评论 -
C++用不同对象操作同一个数据-静态成员
在C++中,类的静态成员(static member)必须在类内声明,在类外初始化,像下面这样。 class A { private: static int count ; // 类内声明 }; int A::count = 0 ; // 类外初始化,不必再加static关键字 因为静态成员属于整个类,而不属于某个对象,如果在类内初始化,会导致每个对象都包含该静态成员,这是矛盾的。 能在类中初始化的成员只有一种,那就是静态常量成员。 此外,还需要注意的是声明和定义的区别: ①变量定义:用于为变量分配存储空间原创 2021-10-09 22:57:39 · 347 阅读 · 0 评论 -
对类访问函数的类引用
类函数中有引用的用法 void set_time(Time& t) { cin >> t.hour; cin >> t.minute; cin >> t.sec; } 在main函数中我们可以定义一个类,即Time t1;这样我们在使用类中的set_time(Time& t)时, 相当于Time t&=t1;注意t1是类,t是t1的类引用,这个一般用于类外定义的类访问函数。 ...原创 2020-09-17 13:09:39 · 302 阅读 · 0 评论 -
C++栈区为什么小?了解一下
内存中,默认栈区最大内存1M 栈区主要用于函数传参和临时变量储存的,不需要太大,太大的内存会导致空间效率和时间效率的降低 因为先入栈的后出栈,后入栈的先出栈,函数调用完了,相应的栈区中的值都被操作系统清空了,不存在相应变量,这就涉及到变量的生存期了,相应的写程序时不会把很多功能代码都写在主函数内,而是通过函数调用,因此长期存储在栈中也就主函数中的那些变量,被调用函数中的变量随着函数调用完清空,这样就不需要太大j的栈内存,想一想,1M=1024K=1024*1024B,这得存多少变量啊,几万个吧,当然可能有比原创 2020-09-16 23:09:33 · 825 阅读 · 0 评论