鱼C论坛

 找回密码
 立即注册
查看: 4646|回复: 4

小甲鱼C++快速入门一个问题(关于析构、构造函数的)?

[复制链接]
发表于 2013-5-13 11:29:49 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
我想显式调用一下子类的构造函数和析构函数:问题在main函数的Pig()和~Pig()上
#include<iostream>
#include<string>

class Animal{
        public:
                int Age;
                bool Sex;
                std::string Name;
               
                Animal();
                ~Animal();
               
                void eat();
                void play();
};
class Pig:public Animal{
        public:
                Pig();
                ~Pig();
       
                void climb();       
};
class Human:public Animal{
        public:
                Human();
                ~Human();
       
                void travl();       
};
Animal::Animal()
{
        Name = "小灰灰";
        Age = 1;
        Sex = true;
        std::cout<<"我对基类进行了构造"<<std::endl;
        std::cout<<Name<<"   "<<Age<<"    "<<Sex<<std::endl;
}
Animal::~Animal()
{
        std::cout<<"我对基类进行了析构"<<std::endl;       
}
Pig::Pig()
{
        std::cout<<"我想知道PIG子类具体的构造过程"<<std::endl;
}
Pig::~Pig()
{
        std::cout<<"这是猪这个子类的解析过程"<<std::endl;
}
Human::Human()
{
        std::cout<<"人类这个子类的构造过程"<<std::endl;
}
Human::~Human()
{
        std::cout<<"这是人这个子类的解析过程"<<std::endl;
}

int main()
{
        Pig pig;
         Pig();//为什么pig.Pig()报错,而Pig()可以呢?
         pig.~Pig(); //为什么这个时候又得用pig.~Pig(),如果使用~Pig()过不了,这个和构造函数用法完全相反啊?
        std::cout<<"这里是分割线!!!!!!!!!!!!!!!!!!!!"<<std::endl;
        return 0;
        }

小甲鱼最新课程 -> https://ilovefishc.com
发表于 2013-5-14 07:54:01 | 显示全部楼层
淡定,淡定,淡定…… 好复杂啊看着头痛
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2013-5-14 08:59:12 | 显示全部楼层
是虚函数的原因么?
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2013-5-14 10:45:16 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2013-5-15 10:20:47 | 显示全部楼层
我只是路过打酱油的。
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-28 14:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表