【新人】解决继承时构造和析构函数的顺序
#include <iostream>
class a
{
public:
a()
{
std::cout << "into A construct function !" << std::endl;
}
~a()
{
std::cout << "into A destruct function !" << std::endl;
}
};
class b :public a
{
public:
b()
{
std::cout << "into B construct function !" << std::endl;
}
~b()
{
std::cout << "into B destruct function !" << std::endl;
}
};
class c :public b
{
public:
c()
{
std::cout << "into C construct function !" << std::endl;
}
~c()
{
std::cout << "into C destruct function !" << std::endl;
}
};
int main()
{
c *z = new c;
delete z;
return 0;
}
纯C++的语法,本人小白,因为有个群里有人问这个问题,就敲了下,也就顺便放到坛子里给需要的人了,这样就很清楚的能理解继承时调用的先后顺序了。
希望大神们不要吐槽,代码风格还有待加强,希望大家能多提意见 学习了,谢谢楼主! 学JAVA的路过~~! Scar-疤痕 发表于 2014-12-1 08:35
学习了,谢谢楼主!
不客气,共同学习罢了 lubinxpp 发表于 2014-12-1 09:48
学JAVA的路过~~!
JAVA也是一样的 using namespace std;没加。
其实就是栈的原理,先进后出。
LZ辛苦 学习了 虽然我是学java的 dyt398 发表于 2014-12-8 21:53
学习了 虽然我是学java的
语言有很大的相通性,不一样的时候不要混淆就好。一样的便可以借鉴
页:
[1]