1. 程式人生 > >c++類和物件二

c++類和物件二

1、函式過載: 函式名相同,引數列表不同(引數個數或引數型別不同)
void f();
void f(int x);
void f(int x,int y);


   僅僅是返回值不同,不能是函式過載
   void f();
   int f(); // 不可以共存 error


2、一個類中可以有多個建構函式--建構函式的過載,但是必須通過不同的引數列表的區分


3、使用建構函式對物件初始化的兩種方式:
(1)在建構函式體內使用賦值語句賦值初始化
Thing(int a,int b,int c){x = a;y = b;z = c;}


(2)使用初始化列表的方式初始化
Thing(int a,int b,int c):x(a),y(b),z(c){}


4、程式中為什麼要使用初始化列表
(1)效率高 -- (類型別的成員)
(2)有些型別的成員變數只能使用初始化列表的形式初始化,如const成員、引用成員等等。

示例程式碼:

#include <iostream>

usingnamespace std;

class Time

{

private:

    int s;int m;int h;

public:

    Time():h(0),m(0),s(0){}                      //初始化列表

    Time(int a,int b,int c):h(a),m(b),s(c){}     //初始化列表

    void printfTime()

    {

        cout<<h<<" "<<m<<" "

<<s<<endl;

    }

};

int main(int argc, const char * argv[]) {

// insert code here...

    Time t;

    t.printfTime();

    Time t1(9,20,30);

    t1.printfTime();

    return 0;

}


相關推薦

c+物件

1、函式過載: 函式名相同,引數列表不同(引數個數或引數型別不同)void f();void f(int x);void f(int x,int y);    僅僅是返回值不同,不能是函式過載  

C++】物件

定義成員函式 所有成員都必須在類內宣告,但是成員函式可以定義在類內也可以定義在類外。 std::string isbn() const { return bookno;} ??? isbn函式是如何獲得bookno成員所依賴的物件呢?緊隨引數列表之後

C++】物件

 一、this指標  關於this指標的一個精典回答:       當你進入一個房子後,       你可以看見桌子、椅子、地板等,       但是房子你是看不到全貌了。       對於一個類的例項來說,       你可以看到它的成員函式、成員變數,       但是例

Scala 程式設計—第七節:物件()

前言:         類和物件第二節,主要介紹:單例物件、伴生物件與伴生類、apply方法、抽象類 1.單例物件 Java語言中,如果想直接使用類名點的方式呼叫方法或屬性,直接用static修飾即可。但Scala語言不支援靜態成員,而提供了object物件,這

c++基礎——物件

1、class的構成 class 類名{     public://公有成員      函式1;     變數1;      ……           private://私有成員      函式2;     變數2;      ……      }; #includ

c++中物件的總結

類和物件的區別 類是抽象的,物件是具體的,所以,類不佔用記憶體,而物件佔用記憶體。總之一句話,類是物件的抽象,物件是類的具體事例。 例如:類是水果的話,那麼物件就是蘋果…… 類中的函式 1、類的成員函式:是指把函式的原型和定義寫在類的內部的函式。是類

C++】物件(4)

一、類的六個預設成員函式 下面是一個Date類,但是它類中什麼成員也沒有,這就是空類。但是它雖然看起來什麼都沒有,實際上不是的,在我們什麼都不寫的情況下,它會自動生成六個預設的成員函式。如圖所示的建構函式、解構函式、拷貝建構函式、賦值過載函式、普通物件取地址函式、const物件取地址函式這六個函

C++】物件(3)—>> this指標

一、this指標的引入 我們在現實中,定義一個類都是根據一個需求來定義的。所以先來看一個常用的日期類 Date 。 class Date { public: void Print() { cout << _year << "-" << _month

C++】物件(2)

一、類的作用域 類定義了一個新的作用域,類的所有成員都在類的作用域中。在類體外定義成員,需要使用 :: 作用域解析符 指明成員屬於哪個類域。否則找不到。 class person { public: void PrintfPersonInfo(); private: char _name

c++簡記—物件

5.2 類的定義 類體中定義類的資料和方法,其中資料描述的是類的特徵,也稱之為屬性或資料成員,方法實際上是類中定義的函式,也稱之為方法,描述的是類的行為。 5.3 類的例項化 在定義一個類之後,並不能夠直接使用類,需要定義一個類的物件,通常也成為類的例項化。 定義類時,如果

C++知識點---物件

1. 類和物件 類:和結構體類似,存在資料(變數),還有方法(函式),即類包含成員變數和成員函式 物件:類的例項,將物件作為程式的基本單元,將程式和資料封裝其中,以提高軟體的重用性、靈活性和

objective C程式 物件

------<a href="http://www.itheima.com" target="blank">Java培訓、Android培訓、iOS培訓、.Net培訓</a>、期待與您交流! ------- /* 類:一類事物共同特徵和行為的

黑馬程式設計師—Objective-C學習—物件的記憶體管理

b、如果有上百個標頭檔案都#import了同一個檔案,或者這些檔案依次被#improt,那麼一旦最開始的標頭檔案稍有改動,後面引用到這個檔案的所有類都需要重新編譯一遍,而相對來 講,使用@class方式就不會出現這種問題了

C++ 關於物件記憶體佔用的理解

類不是一個實體,而是一種抽象的型別,所以不佔用系統的儲存空間,所以是不會容納資料的。只有當建立物件之後,系統才會對其分配記憶體。每一個物件在建立時候,應該對其初始化。需要注意,同一個類建立的不同物件,資料之間是不能相互訪問的。例如: class A;   A a,b; 雖然建

C++學習筆記 () ---- 物件

①、類和物件 類的定義,如下: class Student{ public: //成員變數 char *name; int age; float score; //成員函式 void say(){ cout<<

C++面向物件- -物件的使用(

  目錄 物件指標 1、指向物件的指標 2、指向物件成員的指標 3、指向當前物件的 this 指標 共用資料的保護 1、常物件 2、常物件成員 3、指向物件的常指標 4、指向常物件的指標 5、物件的常引用 6、const 型資料小結

C++第八章 物件

【專案1 - 三角形類】下面設計一個三角形類,請給出各成員函式的定義 #include<iostream> #include<cmath> using namespace std; class Triangle {public: void Set

C++學習筆記():物件

類是物件共性的抽象,一種自定義的資料型別,可認為是C語言中結構體的拓展。它的作用是將資料和演算法(資料操作)封裝在使用者自定義的抽象資料型別中。 為什麼要在C++中新增類這樣一種“工具“呢? 程式中的每一組資料都是為某一種操作而準備的。而資料的交叉使用容易導致資料被誤操作,

C++學習筆記——物件

設計一個類就是設計一個新的型別,應該考慮: 此型別的“合法值”是什麼? 此型別應該有什麼樣的函式和操作符? 新型別的物件該如何被建立和銷燬? 如何進行物件的初始化和賦值? 物件作為函式的引數如何以值傳遞? 誰將使用此型別的物件成員? 類定義的語法形式: clas

c++物件的詳細介紹(

一,物件的動態建立和釋放 1.什麼是物件的動態建立和釋放   通常我們建立的物件都是由C++編譯器為我們在棧記憶體中建立的,我們無法對其進行生命週期的管理。所以我們需要動態的去建立該物件,因此我們需要在堆記憶體中建立物件和釋放物件。在C語言中為我們提供了