當前位置:編程學習大全網 - 編程語言 - 在線編程問題

在線編程問題

/*

1.定義媒體類別。

2.它有兩個派生類:Book類和CD類。

3.其中,圖書有名稱、銷售數量、ISBN號等屬性。

4.CD有名稱、銷量、生產商等屬性。

5.要求:

1)設計上述三個類的相關屬性;

2)利用多態的概念,分別以虛函數的形式顯示圖書和光盤的信息。

3)寫壹個常用函數f(),顯示已經賣出1000以上的書和光盤。

4)在主函數中測試。

*/

# include & ltvector & gt

# include & lt字符串& gt

# include & ltiostream & gt

使用命名空間std

班級媒體

{

公共:

media(){ };

~ Media(){ };

虛擬void Init(字符串名,整數)

{

m _ Name = name

m_Number =數字;

};

虛擬int GetNumber()

{

返回m _ Number

}

虛擬空顯示()

{

cout & lt& lt"名稱:" & lt& ltm _ Name & lt& ltendl

cout & lt& lt" namber:" & lt;& ltm _ Number & lt& ltendl

}

受保護:

字符串m _ Name

int m _ Number

};

課堂用書:公共媒體

{

公共:

book(){ };

~ Book(){ };

void Init(字符串名稱,整數,字符串ISBN)

{

Media::Init(名稱,編號);

m _ ISBN = ISBN

};

空顯示()

{

Media::Display()。

cout & lt& lt" ISBN:" & lt;& ltm _ ISBN & lt& ltendl

}

私人:

字符串m _ ISBN

};

CD類:公共媒體

{

公共:

CD(){ };

~ CD(){ };

void Init(字符串名稱、整數、字符串作者)

{

Media::Init(名稱,編號);

m_Author =作者;

};

空顯示()

{

Media::Display()。

cout & lt& lt作者:“& lt& ltm _ Author & lt& ltendl

}

私人:

字符串m _ Author

};

int main()

{

//添加書籍和光盤

Book *b1 =新書();

Book *b2 =新書();

Book *b3 =新書();

b 1->;Init("book1 ",100," ISBN 100 ");

B2->;Init("book2 ",1000," ISBN 1000 ");

B3->;Init("book3 ",10000," ISBN 10000 ");

CD *cd1 =新CD;

CD *cd2 =新CD;

CD *cd3 =新CD;

CD 1->;Init("cd1 ",100," author 100 ");

cd2->Init("cd2 ",1000," author 1000 ");

cd3->;Init("cd3 ",10000," author 10000 ");

向量& ltMedia * & gtvectMedia

vect media . push _ back(b 1);

vect media . push _ back(B2);

vect media . push _ back(B3);

vect media . push _ back(CD 1);

vectmedia . push _ back(Cd2);

vect media . push _ back(cd3);

//顯示部分(銷售數量大於1000)

for(int I = 0;我& ltvect media . size();i++)

{

if(vectMedia[I]-& gt;get number()& gt;= 1000)

{

cout & lt& lt銷量超過1000的圖書或光盤。& ltendl

vectMedia[I]-& gt;顯示();

}

}

返回0;

}

//操作效果見圖。

  • 上一篇:技工有哪些?
  • 下一篇:邏輯學跟計算機科學沒有關系
  • copyright 2024編程學習大全網