如何执行类对象的构造函数及析构函数?若该对象作为类的成员,什么时候执行其构造函数和析构函数?
1个回答
展开全部
一般来说,构造函数就是在对象定义或创建时自动执行,析构函数就是在函数退出,程序退出,或对象被删除时自动执行,譬如说:
class Test{
...
};
1. 对象定义, 构造函数自动呼叫
Test ptr;
2. 对象创建, 构造函数自动呼叫
Test *ptr=new Test();
3. 函数退出
void function()
{
Test ptr; //构造函数自动呼叫
...
} // 函数执行完毕,析构函数就会自动呼叫
4. 对象被删除, 如果对象是指针, delete 时析构函数就会自动呼叫
void function()
{
Test *ptr;
ptr = new Test() //构造函数自动呼叫
...
delete ptr; //delete 时析构函数就会自动呼叫
} //要注意的是,如果对象是指针,只有delete才会呼叫析构函数,就算函数退出,程序退出也不回呼叫
大概就是这样,自己慢慢消化
class Test{
...
};
1. 对象定义, 构造函数自动呼叫
Test ptr;
2. 对象创建, 构造函数自动呼叫
Test *ptr=new Test();
3. 函数退出
void function()
{
Test ptr; //构造函数自动呼叫
...
} // 函数执行完毕,析构函数就会自动呼叫
4. 对象被删除, 如果对象是指针, delete 时析构函数就会自动呼叫
void function()
{
Test *ptr;
ptr = new Test() //构造函数自动呼叫
...
delete ptr; //delete 时析构函数就会自动呼叫
} //要注意的是,如果对象是指针,只有delete才会呼叫析构函数,就算函数退出,程序退出也不回呼叫
大概就是这样,自己慢慢消化
光点科技
2023-08-15 广告
2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询