c++基础知识补充4

单独使用词汇 using std::cout;

隐式类型转换型初始化:如A a=1,,此时可以形象地理解为int i=1;double j=i;,此时1可以认为创建了一个值为1的临时对象,然后对目标对象进行赋值,当对象为多参数时,使用=(1,2)的形式初始化

实现一个类,计算程序中实现了多少个类对象?

复制代码
class A
{
public:
A(int a=0){ count++;};
A(const A&aa)
{
count++;
}
private:
static int count;
};
int A::count=0;
void func(A a)
{

}
int main()
{
A aa1;
A aa2(aa1);
func(aa1);
cout<<aa1::count;
return 0;
}

全局变量也可以使用静态成员函数调用(没有this指针),如static int get(){return count;},在静态成员函数中不能访问非静态成员,原因是没有this指针

相关推荐
大可不必了3 小时前
03 函数定义和调用
开发语言·python
I_belong_to_jesus3 小时前
C++关于分支预测的优化1
开发语言·c++·算法
承渊政道4 小时前
【Python编程—从入门到实践】(记分与闯关:用Python+Pygame,打造越战越精彩的太空大战!)
开发语言·python·pycharm·游戏程序·pygame
爱学习的程序媛4 小时前
Python常用框架梳理
开发语言·后端·python·ai·web·后端框架·python框架
Rabitebla4 小时前
【Linux】进程控制(十二) 自定义 Shell(二):内建命令与进程工作目录管理
linux·c++·笔记·学习·bash
eggwyw6 小时前
Anaconda安装卸载的详细流程指南
开发语言·python
码客-ygluu10 小时前
一个通用游戏数据服务器
c++·架构
another heaven10 小时前
【C/C++ Ranges 是零开销抽象吗?拆开管道、惰性求值和编译期膨胀】
c语言·开发语言·c++
Code_Solitude10 小时前
C语言动态内存 + 柔性数组 + 数组名退化
c语言·算法·柔性数组