ACM--输入输出,私有继承

/*
*程序的版权和版本声明部分:
*Copyright(c)2013,烟台大学计算机学院学生
*All rights reserved.
*文件名称:
*作者:尚振伟
*完成日期:2014年5月26日
*版本号:v0.1
*对任务及求解方法的描述部分:
*输入描述:无
*问题描述:Student类含有私有数据成员:num,name,sex,公有成员函数: 输入函数get_value()和输出函数display()。采用私有继承方式实现类Student1,增加数据成员:age,addr,成员函数:get_value_1()和display_1()。在程序运行时输入num,name,sex,age,addr的值,调用输出函数输出以上5个数据的值。
*程序输入:
*程序输出:
*问题分析:
*算法设计:
*我的程序:
*/
#include <iostream>
#include <String>
using namespace std;
class Student
{
public:
    void get_value()
    {
        cin>>num>>name>>sex;
    }
    void display()
    {
        cout<<"num: "<<num<<endl;
        cout<<"name:"<<name<<endl;
        cout<<"sex: "<<sex<<endl;
    }
private:
    int num;
    char name[10];
    char sex;
};
class Student1:private Student
{
public:
    void get_value_1()
    {
        Student s;
        s.get_value();
        cin>>age>>addr;
    }
    void display_1()
    {
        Student s;
        s.display();
        //cout<<"name:"<<s.get_name()<<endl;
        cout<<"age:"<<age<<endl;
        cout<<"addr:"<<addr<<endl;
    }
private:
    int age;
    string addr;
};
int main()
{
    Student1 stud1;
    stud1.get_value_1();
    stud1.display_1();
    return 0;
}


结果展示:

ACM--输入输出,私有继承_第1张图片

心得体会:为什么如果基类中的name为string型就不能输出,求解?

你可能感兴趣的:(ACM--输入输出,私有继承)