麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

17 - 05 - 11 C++初窺

2019-11-14 11:57:14
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

l 函數(shù)重載(函數(shù)多態(tài))

可以有多個(gè)同名函數(shù),只要他們的參數(shù)不同即可。

int store (int ,int);

int store (long ,long);

int store (long);

 調(diào)用該函數(shù)時(shí),指定的參數(shù)決定了調(diào)用哪一個(gè)版本

l 緩沖區(qū)存儲(chǔ); 定義一個(gè)數(shù)組 yum[100]來(lái)存儲(chǔ)字符串。

(如char yum [ ] = “Zombie liion”)

std::cin >> yum;

但是如何保證用戶的輸入不會(huì)溢出?而且如果用戶輸入了空格,cin 會(huì)認(rèn)為字符串就此結(jié)束,

不再會(huì)將接下來(lái)的內(nèi)容寫(xiě)入緩沖區(qū)。

為了解決這個(gè)問(wèn)題,必須調(diào)用cin 對(duì)象的方法getline并

提供兩個(gè)參數(shù) 1、要填充的緩沖區(qū) 2、最多讀取的字符數(shù)。

   std::cin .getline(yum,18)

   這樣可以讀取18個(gè)字符,包括空字符(空格)

   在遇到回車(chē)后 停止讀取。

  還可以:  std::cin .getline ( yum,18,‘ ’);

  這條語(yǔ)句在遇到空格后即停止讀取輸入。

ex:  char name[100];

      std::cin .getline(name,18);

類(lèi)和成員

 1) 類(lèi)的聲明(class)比如聲明一個(gè)Tricycle類(lèi):

class Tricycle {      //三輪車(chē)public:   unsigned int speed;   pedal();      //踏板   brake();      //剎車(chē) };   

一個(gè)成員變量speed 兩個(gè)成員函數(shù),這三個(gè)成員可以被其他類(lèi) 直接引用。

//聲明了類(lèi)后,系統(tǒng)并不會(huì)為這個(gè)Tricycle分配內(nèi)存,

他只是告訴編譯器,這個(gè)類(lèi)是什么,包括什么

聲明了類(lèi)后,可以用這個(gè)類(lèi)來(lái)創(chuàng)建對(duì)象。

ex:Tricycle Yong_Jiu;      //永久牌三輪車(chē) 同 int n;   

創(chuàng)建對(duì)象后,可使用“ . ”來(lái)訪問(wèn)其成員變量/成員函數(shù) 

ex :       Yong_Jiu .speed = 6

注意:這里 Tricycle .speed = 6 是不允許的。

調(diào)用pedal()函數(shù):  Yong_Jiu .pedal(); 

class Tricycle {      int model = 110;public:   int....   pedal....} 

model并不在public 之列,所以他是私有的(PRivate)

雖然成員變量可以是共有的,但最好將他們都聲明為私有的(private)這樣只能通過(guò)成員函數(shù)訪問(wèn)他們,

用于設(shè)置或獲取私有成員變量值的函數(shù)稱(chēng)為 存取器(accessor),其他 類(lèi) 要使用這些變量,必須調(diào)用存取器.

要想訪問(wèn)私有函數(shù),要在類(lèi)中設(shè)置一個(gè)共有的接口函數(shù),類(lèi)的對(duì)象需要通過(guò)這個(gè)接口函數(shù)才能訪問(wèn)私有成員。

#include<iostream>using namespace std;class human  {public:	void set(int w) { weight = w; }	int print ( )  { return weight ; }private:	int weight;}; int main ( ) {	human Tom;	Tom.set(5);	cout<<"Tom的體重為:"<<Tom.print()<<"/n";	human Mike; 	Mike.set(7);	cout<<"Mike的體重為:"<<Mike.print()<<"/n"; 	return 0;} 

輸出結(jié)果如下:   Tom的體重為:5

Mike的體重為:7

看似這么復(fù)雜的設(shè)置了一個(gè)接口是為了提高安全性,比如用戶輸入了一個(gè)超過(guò)范圍的數(shù),

這個(gè)就可以在接口函數(shù)set中進(jìn)行設(shè)定:

void set(int w) {	if(w>0 && w<100)		weight = w;	else		cout<<“請(qǐng)將weight的值設(shè)置為從0~100,否則系統(tǒng)將會(huì)把weight設(shè)置為0”	weight = 0;}

一般情況下,我們將類(lèi)的數(shù)據(jù)成員設(shè)置為私有,而使用類(lèi)的公有函數(shù)來(lái)訪問(wèn)它,

好處就是數(shù)據(jù)的賦值和讀取分開(kāi)操作,賦值函數(shù)不需要考慮讀取函數(shù)是如何工作的,

反之亦然,如此便提高了程序的可維護(hù)性。


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 一级电影免费看 | 一二区成人影院电影网 | 91精品久久香蕉国产线看观看 | 日日操操| 毛片视频观看 | 亚洲小视频| 国产午夜精品理论片a级探花 | 国产精品久久久久网站 | 免费黄色成人 | 在线亚洲播放 | 成年免费观看视频 | 国产噜噜噜 | 午夜视频在线免费观看 | 亚洲精品欧美二区三区中文字幕 | 丁香天堂网| 狠狠操视频网站 | 激情综合网俺也去 | 久久精品视频在线看99 | 国产中出视频 | 97超碰资源站 | 宅男噜噜噜66一区二区 | 99精品视频在线观看免费播放 | 久久久久久久一区 | 在线亚洲观看 | 国产成年人网站 | 精品一区二区久久久久久按摩 | 天天碰天天操 | 日韩视频高清 | 一级黄色毛片a | 视屏一区 | 久久久久久久久久91 | 久久国产精品区 | 一区二区三区黄色 | 欧美一级特级 | 香蕉视频破解 | 操碰| 国产精品成人久久久久a级 av电影在线免费 | 精品国产一区二区三区在线观看 | 欧日韩在线 | 国产999视频在线观看 | 欧美一级做一级爱a做片性 91在线视频观看 |