关闭

忘记写"public"的后果

559人阅读 评论(0) 收藏 举报

《C++程序设计》--谭浩强
P363
例11.5 简单的派生类的构造函数
★★★出现错误的地方★★★
在class Student1:public Student
{
下面忘记写"public",C++中不写时默认为是

private的,所有会出现许多不能访问私有的错误

!
★★★出现错误的地方★★★


#include <iostream>
#include <string>
using namespace std;
class Student
{
public:
 Student(int n,string nam,char s)
 {
  num=n;
  name=nam;
  sex=s;
 }
 ~Student( ) { } //基类析构函数
protected:
 int num;
 string name;
 char sex;
};

class Student1:public Student
{public:
 Student1(int n,string nam,char s,int

a,string ad):Student(n,nam,s)
 {
  age=a;
  addr=ad;
 }
 ~Student1( ) { }  //派生类析构函数
 void show()
 {
  cout<<"num:"<<num<<endl;
  

cout<<"name:"<<name<<endl;
  cout<<"sex:"<<sex<<endl;
  cout<<"age:"<<age<<endl;
  

cout<<"address:"<<addr<<endl<<endl;
 }
 
private:
 int age;
 string addr;
};

int main()
{
 Student1 stud1(10010,"Wang -

li",'f',19,"115 Beijing Road,Shanghai");
 Student1 stud2(10011,"Zang -

Fun",'m',21,"213 Beijing Road,Shanghai");
 stud1.show();
 stud2.show();
 return 0;
}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:149813次
    • 积分:1849
    • 等级:
    • 排名:千里之外
    • 原创:20篇
    • 转载:69篇
    • 译文:0篇
    • 评论:36条
    最新评论
    工作