1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > c++——对象的构造和析构函数 构造函数的分类及调用

c++——对象的构造和析构函数 构造函数的分类及调用

时间:2023-04-09 05:37:53

相关推荐

c++——对象的构造和析构函数 构造函数的分类及调用

1构造函数和析构函数的概念

有关构造函数

1构造函数定义及调用

1)C++中的类可以定义与类名相同的特殊成员函数,这种与类名相同的成员函数叫做构造函数;

2)构造函数在定义时可以有参数;

3)没有任何返回类型的声明。

2构造函数的调用

自动调用:一般情况下C++编译器会自动调用构造函数

手动调用:在一些情况下则需要手工调用构造函数

有关析构函数

3)析构函数定义及调用

1)C++中的类可以定义一个特殊的成员函数清理对象,这个特殊的成员函数叫做析构函数

语法:~ClassName()

2)析构函数没有参数也没有任何返回类型的声明

3)析构函数在对象销毁时自动被调用

4)析构函数调用机制

C++编译器自动调用

构造函数的分类及调用

C++编译器给程序员提供的对象初始化方案,高端大气上档次。

1无参数构造函数

调用方法: Test t1, t2;

2有参构造函数

有参构造函数的三种调用方法

3拷贝构造函数调用时机(用一个对象初始化另一个对象时)

赋值构造函数的四种调用场景(调用时机)

第1和第2个调用场景

第3个调用场景

第4个调用场景

4默认构造函数

二个特殊的构造函数

1)默认无参构造函数

当类中没有定义构造函数时,编译器默认提供一个无参构造函数,并且其函数体为空

2)默认拷贝构造函数

当类中没有定义拷贝构造函数时,编译器默认提供一个默认拷贝构造函数,简单的进行成员变量的值复制

3.3构造函数调用规则研究

1)当类中没有定义任何一个构造函数时,c++编译器会提供默认无参构造函数和默认拷贝构造函数

2)当类中定义了拷贝构造函数时,c++编译器不会提供无参数构造函数

3) 当类中定义了任意的非拷贝构造函数(即:当类中提供了有参构造函数或无参构造函数),c++编译器不会提供默认无参构造函数

4 )默认拷贝构造函数成员变量简单赋值

总结:只要你写了构造函数,那么你必须用。

构造析构阶段性总结

1)构造函数是C++中用于初始化对象状态的特殊函数

2)构造函数在对象创建时自动被调用

3)构造函数和普通成员函数都遵循重载规则

4)拷贝构造函数是对象正确初始化的重要保证

5)必要的时候,必须手工编写拷贝构造函数

========》1个对象的初始化讲完了,增加一个案例。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。