c++ 的学习 构造函数1

1.◼ 构造函数(也叫构造器),在对象创建的时候自动调用,一般用于完成对象的初始化工作

2.一旦自定义了构造函数,必须用其中一个自定义的构造函数来初始化对象

就是有多个的话    根据参数编译器自行选择

Person(int a){}         Person(int a ,int b){}        还有压根没有定义的构造函数(初始化函数)对应的调用main调用::

Person a(5)                       Person  a(10 ,5)      Person a

补充一点 Person (){m_age=0}

之后的定义是 Person person;

 虽然有() 但是没有参数所以就

c++ 的学习 构造函数1

 

 至于 定义的参数 都是最后在函数体内部给了 类里面定义的成员变量了

给了才算是初始值   才利用了参数不然要参数有什么用

c++ 的学习 构造函数1

 3.构造函数

函数名与类同名,无返回值(void都不能写),可以有参数,可以重载,可以有多个构造函数

4.new        可以调用构造函数,  对于new malloc 的堆空间还需要初始化?不是在定义的时候已经初始化了吗?

5.但是把对象定义到全局 或者栈空间(new 可以malloc 不可以)         代码区   

6.构造函数 是以类名     Person(){}

在调用的时候不需要写它的调用函数  只需要类名+对象名即可· 如果有多个构造函数

类名+对象名(10,20)加上参数就好

7.构造函数以及定义的函数在类里面:

 8.刚才在想用new与malloc 创造堆空间,为什么要用 int*p=new  int 

指针指向呢

Person     *p= new  Person;/           (这里类型是Person  对象)

申请Person  这么大的空间;

9.作用不一定是初始化 

10.

c++ 的学习 构造函数1

 

 11.明确赋值 就是初始化

在类里面赋值 不仅仅是赋值,,换还有就是初始化 

c++ 的学习 构造函数1

 12.

c++ 的学习 构造函数1

 

 13

c++ 的学习 构造函数1

 

 

 14.

c++ 的学习 构造函数1

 

 

 多个构造函数

15.

c++ 的学习 构造函数1

 

 16.

c++ 的学习 构造函数1

 

 17.

c++ 的学习 构造函数1

 

 18.

c++ 的学习 构造函数1

 

 19.

c++ 的学习 构造函数1

 

 20.

c++ 的学习 构造函数1

 

 把viod也放在里面了

21.

c++ 的学习 构造函数1

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zgydpp.html