真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

類(lèi)與對(duì)象

1、C++語(yǔ)言是基于面向?qū)ο蟮?,所以尤其四大特性?/p>

成都創(chuàng)新互聯(lián)公司-專(zhuān)業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性?xún)r(jià)比中山網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式中山網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋中山地區(qū)。費(fèi)用合理售后完善,十多年實(shí)體公司更值得信賴(lài)。

  抽象、封裝、繼承、多態(tài)。、

  抽象:對(duì)客觀世界,現(xiàn)實(shí)實(shí)體的一類(lèi)定義,找到共性;

  封裝:將數(shù)據(jù)及對(duì)數(shù)據(jù)上的操作捆綁起來(lái);

  繼承:子子孫孫無(wú)窮匱也;

  多態(tài):主要體現(xiàn)在繼承,同一事物的不同表現(xiàn)形式。

2、C++中的類(lèi):

  與C語(yǔ)言中的結(jié)構(gòu)體類(lèi)似:

struct STU{
  char name[15];
  char id[9];
  double score;
};

  以上就可以體現(xiàn)封裝,將不同的數(shù)據(jù)類(lèi)型封裝起來(lái),只是沒(méi)有方法而已;

  新的數(shù)據(jù)類(lèi)型為:struct STU  a(結(jié)構(gòu)體變量)。

  通過(guò)類(lèi)比,可以知道,在C++中通過(guò)class定義新的數(shù)據(jù)類(lèi)型,

class Test{
public:
  void setData(int x){
   data;
   }
private:  
  int data;
};

  通過(guò)類(lèi)將其封裝起來(lái),新的數(shù)據(jù)類(lèi)型為T(mén)est  a(對(duì)象)。

  只不過(guò)在C語(yǔ)言中叫做結(jié)構(gòu)體,在C++中叫就做類(lèi),是一種對(duì)事物共性的抽象,

   比C多了對(duì)數(shù)據(jù)上的操作。

3、對(duì)象:

  在C中將結(jié)構(gòu)體定義的叫做,結(jié)構(gòu)體變量,在C++中將類(lèi)定義的叫做,對(duì)象。

  創(chuàng)建對(duì)象兩種方式:

  靜態(tài)創(chuàng)建:Test a; 創(chuàng)建后將對(duì)象壓棧;

  動(dòng)態(tài)創(chuàng)建:Test *a = new Test;  其申請(qǐng)的空間在堆上,必須通過(guò)delete釋放。

4、訪問(wèn)限定符:

  public:公有    protected: 保護(hù)    private:私有;

  C++中,通過(guò)對(duì)象只能訪問(wèn)一個(gè)類(lèi)的public,   對(duì)protected和private修飾的通過(guò)對(duì)象不能調(diào)用。

5、深入理解類(lèi)與對(duì)象:

  當(dāng)我們定義一個(gè)類(lèi)的時(shí)候,相當(dāng)于規(guī)劃了一幅藍(lán)圖,沒(méi)有實(shí)例化時(shí),是沒(méi)有空間的,通過(guò)類(lèi)名.data是錯(cuò)誤的。

  實(shí)例化:Test t1();    錯(cuò)  這個(gè)不會(huì)實(shí)例化對(duì)象t1,因?yàn)檫@是函數(shù)聲明,t1是函數(shù)名稱(chēng),無(wú)參,返回值為T(mén)est類(lèi)型;

  Test t2;     對(duì)       無(wú)參的初始化

  Test t3(10);    對(duì)       含有一個(gè)參數(shù)的初始化

6、成員方法的實(shí)現(xiàn):

  可以在類(lèi)內(nèi)直接定義;

  也可以在類(lèi)內(nèi)聲明,類(lèi)外定義,加上作用域限定符,

int Test::getData(){
  return data; 
}

  加上::這個(gè)之后表明getData是Test的成員函數(shù)。

7、C++重載

  C語(yǔ)言為什么不能重載呢?  從匯編層面可以知道,

void fun();                          
int fun(int a);
double fun(double a, double b)

  以上三個(gè)函數(shù)在C角度看匯編都是fun;名字都相同;

  從C++的角度看,其匯編層面的函數(shù)名字為:fun funi fundd,是不一樣的,所以C++有函數(shù)的重載。

  重載:函數(shù)名字相同,只與參數(shù)列表有關(guān),與返回值無(wú)關(guān)。

  在C++中對(duì)重載函數(shù)使用extern "C"就可以理解了,

  extern "C":將當(dāng)前函數(shù)(C++寫(xiě)的),當(dāng)做C編譯,而C編譯只看函數(shù)名稱(chēng),所以多個(gè)重載函數(shù)只能出現(xiàn)一次extern “C”!

  要是出現(xiàn)兩個(gè),就會(huì)造成函數(shù)名相同,錯(cuò)誤。


本文名稱(chēng):類(lèi)與對(duì)象
URL地址:http://weahome.cn/article/jsoogi.html

其他資訊

在線咨詢(xún)

微信咨詢(xún)

電話咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部