精华内容
下载资源
问答
  • 公用继承

    2014-06-13 19:15:34
    Description ...采用公用继承方式实现类Student1,增加数据成员:age,addr,成员函数:get_value_1()和display_1()。程序运行时输入num,name,sex,age,addr的值,调用输出函数输出以上5个数据的值。

     

    Description

    Student类含有私有数据成员:num,name,sex,公有成员函数: 输入函数get_value()和输出函数display()。采用公用继承方式实现类Student1,增加数据成员:age,addr,成员函数:get_value_1()和display_1()。在程序运行时输入num,name,sex,age,addr的值,调用输出函数输出以上5个数据的值。

    Input

    输入num,name,sex,age,addr的值

    Output

    输出num,name,sex,age,addr的值

    Sample Input

    1001 zhang m 21 shanghai
    

    Sample Output

    num: 1001
    name: zhang
    sex: m
    age: 21
    address: shanghai
    

     


     

    #include <iostream>
    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:public Student//声明为公用继承
    {public:
    	void get_value_1()
    	{
    		cin>>age>>addr;
    	}
    	void display_1()
    	{
    		cout<<"age: "<<age<<endl;
    		cout<<"address: "<<addr<<endl;
    	}
    private:
    	int age;
    	char addr[30];//新增成员
    };
    int  main()
    {//因为是继承,所以可以访问基类中的公用成员函数,而这里因为基类中的变量是private型的,所以不能在派生类中被直接“见到”,只能通过函数调用。
        Student1 stud1;
        stud1.get_value();
        stud1.get_value_1();    
        stud1.display();
        stud1.display_1();
        return 0;
    }
    

    展开全文
  • C++ 公用继承

    2017-08-15 23:31:07
    C++的继承方式分为 公用继承,私有继承,保护继承 建立一个派生类时,将基类的继承方式指定为public,则为公用继承。 1 公用继承时,基类的公用成员和保护成员仍然为公用成员和保护成员的属性。 2 基类的私有...

    C++的继承方式分为 公用继承,私有继承,保护继承

    建立一个派生类时,将基类的继承方式指定为public,则为公用继承。


    1 公用继承时,基类的公用成员和保护成员仍然为公用成员和保护成员的属性。

    2 基类的私有成员,仍为基类的私有成员,只能用基类的成员函数去引用它,所以派生类的成员函数不能引用基类的私有成员。

    访问属性
    基类的访问属性 继承方式
    在派生类中的访问属性
    private
    公用继承 不可访问
    public 公用继承 public
    protected 公用继承 protected

    附上课本上的小例子,切勿眼高手低

    #include <iostream>
    #include <string.h>
    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;
            string name;
            char sex;
        
    };
    
    class Student1:public Student  //声明派生类
    {
        public:
            void get_value_1()
            {
                get_value(); //公用继承,所以可以调用基类的公用函数
                cin>>age>>addr;
            }
            void display_1()
            {
                display(); //公用继承,所以可以调用基类的公用函数
                cout<<"age= "<<age<<endl;
                cout<<"addr= "<<addr<<endl;
            }
         private:
            int age;
            string addr;
    };
    
    int main()
    {
        Student1 stud;
        stud.get_value_1();
        stud.display_1();
        return 0;
    }
    
    
    虽然派生类的成员函数不能访问基类的私有成员,但是可以通过访问基类的公用成员函数,而进一步的输出基类私有成员的值,如display_1()函数调用display函数。

    展开全文
  • #include using namespace std; class Student //声明基类 {public: //基类公用成员 void get_value(); void display( ); protected :
    #include <iostream> 
    using namespace std; 
    class Student                        //声明基类 
    {public:                             //基类公用成员                 
      void get_value(); 
      void display( ); 
     protected :                         //基类保护成员 
        int num; 
        char name[10]; 
        char sex; 
    };  
    void Student::get_value() 
     {cin>>num>>name>>sex;}  
    void Student::display( ) 
     {cout<<"num: "<<num<<endl; 
      cout<<"name: "<<name<<endl; 
      cout<<"sex: "<<sex<<endl; 
     } 
        
    class Student1: public Student              //声明一个公
    用派生类 
    {public: 
       void get_value_1(); 
       void display1( ); 
     private: 
       int age;                           
       char addr[30]; 
    };  
    void Student1::get_value_1() 
     {get_value(); 
      cin>>age>>addr; 
     } 
    void Student1::display1( ) 
      {cout<<"num: "<<num<<endl;         //引用基类的保护
    成员,合法 
       cout<<"name: "<<name<<endl;       //引用基类的保护
    成员,合法 
       cout<<"sex: "<<sex<<endl;         //引用基类的保护成
    员,合法 
       cout<<"age: "<<age<<endl;         //引用派生类的私
    有成员,合法 
       cout<<"address: "<<addr<<endl;    //引用派生类的私
    有成员,合法 
      }  
    int main( ) 
     {Student1 stud1;                      //stud1 是派生类
    student1 类的对象 
      stud1.get_value_1();                 //调用派生类对象
    stud1 的公用成员函数 
    get_value_1 
      stud1.display1( );                   //调用派生类对象
    stud1 的公用成员函数 
    display1 
      return 0; 
     } 

    展开全文
  • #include<iostream> #include<string> using namespace std; class student {public: void get_value() { cin>>num>>name>>sex; } void display() ..."num:"&...
    #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;
    	string name;
    	char sex;
    };
    
    class student1:public student
    {
    	public:
    	void get_value_1()
    	{
    		cin>>age>>addr;
    	}
    	void display_1()
    	{
    		cout<<"age:"<<age<<endl;
    		cout<<"adress:"<<addr<<endl;
    	}
    private:
    	int age;
    	string addr;
    };
    
    void main()
    {
    	student1 stu;
    	stu.get_value();
    	stu.get_value_1();
    	stu.display();
    	stu.display_1();
    }

     

    展开全文
  • 输入输出--公用继承

    千次阅读 2014-05-22 15:14:46
    [Submit][Status][Web Board] Description ...Student类含有私有数据成员:num,name,sex...采用公用继承方式实现类Student1,增加数据成员:age,addr,成员函数:get_value_1()和display_1()。程序运行时输入num,n
  • 类的公用继承

    2013-07-28 20:30:34
    #include using namespace std; class Student { public: void get_value() { cin>>num>>name>>sex; } void display() { cout; cout; cout<<"sex:"<
  • ####习题 11.1 将例11.1的程序片断补充和改写成一个完整、正确的程序,用公用继承方式程序中应包括输入数据的函数,程序运行时输入num,name,sex,age,addr的值,程序应输出以上5个数据的值。 代码块: #...
  • C++习题 输入输出--公用继承

    千次阅读 2014-06-23 18:38:37
    /*Description ...采用公用继承方式实现类Student1,增加数据成员:age,addr,成员函数:get_value_1()和display_1()。程序运行时输入num,name,sex,age,addr的值,调用输出函数输出以上5个数据的值。
  •  还要知其所以然:不要通过公用继承重用(基类中的已有)代码,公用继承是为了被(已经多态地使用了基对象的已有代码)重用的。  按照Liskov替换原则(LiskovSubstitution Principle),公用继承所建模的必须总是...
  • 将例5.1的程序片段补充和改写成一个完整、正确的程序,用**公用继承**方式程序中应包括输入数据的函数,程序运行时输入 num, name, sex, age, addr 的值,程序应输出以上5个数据。 ——谭浩强的《C++面向对象...
  • Description ...采用公用继承方式实现类Student1,增加数据成员:age,addr,成员函数:get_value_1()和display_1()。程序运行时输入num,name,sex,age,addr的值,调用输出函数输出以上5个数据的值。
  • #include &lt;iostream&gt; using namespace std; class Student { public: void get_value() { cin&gt;&gt;num&gt;&gt;name&gt;&gt;sex; } void display( ) ......
  • 如果基类成员为 public 或 protected,则派生列表中使用的访问标号决定该成员派生类中的访问级别:(1)如果是公用继承,基类成员保持自己的访问级别:基类的 public 成员为派生类的 public 成员,基类的 prote
  • * All rights reserved. * 作 者: 石尧 * 完成日期:2014 年05 月13日 ...* 问题描述:private继承下的访问权限和继承方式。 * 样例输入:略. * 样例输出:略。 * 问题分析:略。 */ #include using namesp
  • * All rights reserved. * 作 者: 石尧 * 完成日期:2014 年05月 13日 ...* 问题描述:protected继承下的访问权限和继承方式。 * 样例输入:略. * 样例输出:略。 * 问题分析:略。 */ #include using name
  • 派生类继承了基类的全部数据成员和除了构造函数、析构函数之外的全部函数成员,但是,这些成员的访问属性派生过程中是可以...类的继承方式有:公有继承、私有继承、保护继承当类的继承方式为公有继承时:基类的p...
  • 希望写一个对话框公用父类,然后其它地方继承它 我vc6.0资源面板的Dialog文件夹里插入了了一个对话框,ID为IDD_DIALOG1,并它基础上建了一个对话框类,名为CTemplate,基类是CDialog,头文件中的语句如下: ...
  • //公有继承:基类的公有和保护成员派生类中仍然是公有和保护成员,可以由派生类的成员函数来访问, //派生类对象可以访问公有的成员,至于基类的私有成员,无论是派生类的成员函数,还是派生类的对象,都无法访问 /...
  • C++ 公用、私有和受保护的继承

    千次阅读 2012-08-30 20:49:50
    《C++ Primer》中如下解释公用、私有和受保护的继承,本人感觉很重要,也烦了不少错,觉得有必要记录下来。  C++ 对类所继承下来的成员的访问方式由基类中的成员访问级别和派生类的派生列表中使用的访问...
  • 1.介绍:面向对象程序设计的4个特点:抽象、封装、继承、多态性。 C++中的可重用性是通过继承这一机制来实现的。【父类派生出子类,子类继承于父类】。 派生类是基类的具体化,...继承方式有:public(公用的),privat
  • 但是可以默认C#的“继承方式”为C++中的公用继承,因为二者(C++为公用继承的情况)结果是一致的,即基类私有成员派生类中都不可访问,非私有成员派生类中保持原来的访问属性。C#与C++继承方式异同共同性: P159...
  • C++的三种继承方式

    2016-04-12 20:04:27
    公用(public):访问权限最高;除派生类外,外部函数也可以直接访问(无论是成员变量还是成员函数)。 私有(private):访问权限最低...我们这样来记会更加容易一些,在继承时: 1、不管采用哪种形式(public, prote
  • 公有继承,私有继承,保护继承的区别

    万次阅读 多人点赞 2016-04-29 16:01:11
    一个子类继承父类时,可按照public、private和protected方式继承父类,每种继承方式的区别如下: 1) public继承方式 基类中所有public成员派生类中为public属性;基类中所有protected成员派生类中为...
  • JS常见的继承方式

    千次阅读 2016-09-23 23:20:27
    1.利用原型链prototype; function person ...这种方法的弊端:1.父类的属性不能是引用类型,...把子类实例独有的属性(包括常用和引用类型)利用call方式继承,方法什么的写到原型对象中,利用原型链进行继承
  • 私有继承

    千次阅读 2014-04-22 10:36:22
    C++编程语言中,声明一个派生类时将基类的继承方式指定为private的称为私有继承,用私有继承方式建立的派生类称为私有派生类(private derived class),其基类称为私有基类(private base class)。私有基类的...
  • 如果基类成员为 public 或protected,则派生列表中使用的访问标号决定该成员派生类中的访问级别:• 如果是公用继承,基类成员保持自己的访问级别:基类的 public 成员为派生类的 public 成员,基类的 protected ...
  • 必须掌握的几种常见的继承方式

    千次阅读 2018-08-23 19:47:08
    嗯,继承对于新手来说,总是会弄得焦头烂额,继承就像你的对象,你等待你的对象,心里怕他不来,但是又怕他乱来,总是让你手足无措,希望本篇文章能让你掌握主动权,不再等待0.0 父类函数约定 // 先约定好...
  • Javascript的四种继承方式

    万次阅读 2009-12-25 15:11:00
    Javascript中,所有开发者定义的类都可以作为基类,但出于安全性考虑,本地类和宿主类不能作为基类,这样可以防止公用访问编译过的浏览器级的代码,因为这些代码可以被用于恶意攻击。 选定基类后,就可以创建它的...
  • 编写自己的组件时定义了这样一个成员变量:contents:[],这样的意思我认为应该是:为每个对象创建一个contents变量,这个变量是一个空数组。...(我创建组件时没有对改变量做任何操作)这应该是dojo继承机制的问题或
  • 解决办法是添加clone方法:代码如下所示:  public Object clone() throws CloneNotSupportedException {  return super.clone();  }

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 47,189
精华内容 18,875
关键字:

在公用继承方式下