6.25 被虐記 1 期末測試 派生繼承 10+100=110

題目要求:


下面的程序中,派生類Derive繼承自基類Base,main函數中,要通過Derive類的對象d,輸出繼承自Base及其自身的val數據成員的值。例如,輸入的n爲100,繼承自Base及的val值是10,而自身的val的值爲110。很遺憾,下面的程序中,在begin和end之間有兩處語法錯誤,請修改並提交這部分代碼。

#include <iostream>
using namespace std;
class Base
{
    private:
    int val;
public:
    Base():val(10){}
    int getV(){return val;}
};
//************* begin *****************
class Derive: Base //(1)
{
private:
    int val;
    int getV(){return val;}  //(2)
public:
    Derive():val(0){}
    void setV(int i)
    {
        val=Base::getV()+i;
    }
};
//************* end *****************
int main()
{
    int n;
    cin>>n;
    Derive d;
    d.setV(n);
    cout<<d.Base::getV()<<" "<<d.getV()<<endl;
    return 0;
}


輸入
一個整數n,用於設置d.val的值


輸出
兩個整數,第一個是通過d對象的基類Base的成員函數getV返回的val值,固定爲10,第二個是通過d對象的成員函數getV返回的val值,由函數的定義,爲10加上輸入的n值


樣例輸入
100
樣例輸出

10 110



//************* begin *****************
class Derive: public Base //(1)
{
private:
    int val;


public:
    int getV(){return val;}  //(2)
    Derive():val(0){}
    void setV(int i)
    {
        val=Base::getV()+i;
    }
};
//************* end *****************



            繼承基類,要明顯表示public 或 private   ,調用輸入輸出應是public

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章