c++构造函数浅析

构造函数 :

1.初始化对象,对象就是一个物化的东西,其一创造出来就是一个完整的物体,在面向对象这个体系中对象在使用之前就应该是初始化好的,不应让别人去初始化。

ps:构造函数不去分配内存,其一new一个对象时new语句本身就是分配内存的,而不是构造函数分配的。其二静态全局对象在main函数没有运行之前就已经存在了。更别说去执行构造函数。而是由编译器事先就分配好的,直接load内存使用。

2.为对象分配资源

文件等资源的分配以及对象的使用分配堆内存

3.其它程序员认为要做的事情。

对象的创建到对象的使用这个时间点要干的事情,如,载入对象要用的库,在析构函数中卸载库

 

为什么要设计构造函数、析构函数

1.更好的体现“物化”思想(自动性)

2.更好的封装性(避免从外部初始化)

3.更有效地使类架构设计与程序架构设计分开

通过继承派生的关系写一个类库。程序架构设计通过类创建一个个的对象(类是给编译器看你的不参加实际的运算),对象之间组织起来的架构就是程序的架构。

 

4.导致更清晰的面向接口编程、更有效的复用

一个好的程序是接口到接口的去操作,接口去操作另外类的数据是不好的类设计造成的。

转载于:https://www.cnblogs.com/susen/p/5705229.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值