C++派生的简单问题(初学者)
定义一个哺乳动物类Mammal,再由此派生出狗类Dog,定义一个Dog类的对象,观察基类与派生类的构造函数和析构函数的调用顺序。
输入样例:
Input Dog Name:wangcai
输出样例:
Con.Mammal;Con.Dog:wangcai;Des.Dog:wangcai;Des.Mammal;
#include <iostream>
#include <string>
using namespace std;
class Mammal
{
public:
Mammal(string name):name(name)
{
cout<<"Con.Mammal;";
}
~Mammal()
{
cout<<"Des.Mammal;";
}
protected:
string name;
};
class Dog: public Mammal
{
public:
Dog(string name):name(name) //错误处
{
cout<<"Con.Dog:"<<name<<";";
}
~Dog()
{
cout<<"Des.Dog:"<<name<<";";
}
private:
string name;
};
int main()
{
string name;
cout<<"Input Dog Name:";
cin>>name;
Dog d(name);
return 0;
}
以上是我的代码,错误处已在代码中标出,求老司机解释下为什么错,如何改正,谢谢!!!
输入样例:
Input Dog Name:wangcai
输出样例:
Con.Mammal;Con.Dog:wangcai;Des.Dog:wangcai;Des.Mammal;
#include <iostream>
#include <string>
using namespace std;
class Mammal
{
public:
Mammal(string name):name(name)
{
cout<<"Con.Mammal;";
}
~Mammal()
{
cout<<"Des.Mammal;";
}
protected:
string name;
};
class Dog: public Mammal
{
public:
Dog(string name):name(name) //错误处
{
cout<<"Con.Dog:"<<name<<";";
}
~Dog()
{
cout<<"Des.Dog:"<<name<<";";
}
private:
string name;
};
int main()
{
string name;
cout<<"Input Dog Name:";
cin>>name;
Dog d(name);
return 0;
}
以上是我的代码,错误处已在代码中标出,求老司机解释下为什么错,如何改正,谢谢!!!
...全文
相关推荐
cpp代码-C++prime5 P10
在深入探讨C++编程的学习之旅中,《C++ Primer Plus》第五版的第10章无疑是一个重要的里程碑。对于C++初学者和进阶者来说,这本书是他们的宝典,不仅覆盖了基础知识点,还触及了高级主题。
CPP_projects:一个包含我在学习c ++时所做的c ++项目的仓库
通过对这些项目的分析和实践,开发者可以更好地理解和应用C++的各种特性,提升编程能力,并为解决实际问题打下坚实的基础。无论是初学者还是经验丰富的开发者,都能从中受益匪浅。
vc++详解,初学者...
一个简单的C++程序通常包括四个步骤:编辑源代码(.cpp文件)、编译生成目标文件(.obj文件)、链接生成可执行文件(.exe文件),最后执行程序。
helloworld.rar_Windows编程_Visual_C++_
**对话框类**:如果程序需要用户输入,可以使用CDialog派生类来创建对话框。5. **消息映射**:MFC使用消息映射机制将Windows消息与成员函数关联起来,使得处理用户事件变得简单。6.
CPP_ex.rar_ex
学习和分析这些示例代码可以帮助初学者理解C++的核心概念,并逐渐提升编程能力。通过实际编写和运行代码,可以更好地掌握理论知识,并为解决实际问题打下坚实的基础。


新手乐园
