构造函数和类名相同,可以带参数,参数可以有多个构造函数执行完成后,内存开辟完成,同时可以完成初始化工作.
析构函数~Test();析构函数可以自己调用,析构函数调用后,对象不存在了.自己调了析构函数后,就不能在调用对象的方法了.不建议自己调用析构函数
示例代码1:class student{private:int age;char NAME[20];};
student s1
int main(){
【<二>掌握构造函数和析构函数】student s2;
student *ps3=new student();
}
上面的代码 s2数据位置在栈上, ps3指向对象在堆上, s1在数据区 .datas2在栈上,main 函数执行完成后,会自动调用析构函数,而ps3在堆上,必须自己手动的 delete ps3,delete ps3实际上包含两个动作,第1个是调用这个对象的的析构函数,第2个是释放内存即 free(ps3);s1是全局变量,在.data 区,程序结束后才自动析构
推荐阅读
- 二十四 设计模式学习:Spring 中使用到的设计模式
- WebKit策略:<foreignObject>可用于绘制svg中的html标签,但与<use>搭配不生效
- Docker | 专栏文章整理🎉🎉
- Unity之"诡异"的协程
- ModuleNotFoundError: No module named 'XXX'
- MAUI新生-XAML语法基础:语法入门Element&Property&Event&Command
- TDSQL-C 真·秒级启停:连接断了,又没断
- 王者荣耀炮火千金探索第2阶段答案图文攻略-王者荣耀炮火千金探索第二阶段怎么玩
- Go实现栈与队列基本操作
- 【lwip】11-UDP协议&源码分析