C中定義的類,成員函式可以直接使用嗎

2021-03-04 04:29:04 字數 2398 閱讀 3587

1樓:匿名使用者

沒有物件的時候要訪問類成員函式的話,只能訪問靜態成員函式。例如:

class a

}這樣可以在主函式裡直接用

a::abc();

這樣的語句進行呼叫。

c++裡如何在類裡定義一個成員函式,可以不用 物件名.成員函式名(引數)的方式呼叫即可直接呼叫?

2樓:匿名使用者

你可以把***p函式申明為static(靜態成員函式)就可以不用建立一個物件直接用類名加雙冒號來呼叫了,但是你不能在靜態函式中呼叫非靜態成員變數以及函式

3樓:匿名使用者

靜態方法

或者乾脆用全域性方法吧

4樓:

把該函式定義為類的靜態函式

c++中如何用類來直接呼叫類中的成員函式

5樓:匿名使用者

1.c++中只有靜態成員函式才能用類名來直接呼叫;即 static 定義的函式定義的才行。

2.靜態成員函式是屬於整個類的而不是某個物件,靜態成員函式只儲存一份供所有物件共用。所以在所有物件中都可以共享它。

6樓:

class a

// 靜態函式只能對靜態成員操作

private:

static int number;

};int a::number=0;// 類體外初始化int main()

c++類的定義中可以呼叫函式嗎

7樓:深圳市新思維軟體有限責任公司

c++的建構函式中是能夠呼叫其他函式的。

原因如下:

建構函式也是成員函式;

當執行建構函式的時候,物件的資料成員的記憶體已經分配完成;

因此建構函式是能夠呼叫其他函式的。

8樓:匿名使用者

在log.h中只寫函式的宣告,另外建立一個log.cpp的檔案,把函式的實現都移到這個cpp檔案中去就可以了。

其他方法如下: 1:在標頭檔案是宣告變數,然後在使用的檔案中用exten標識。

請教一下:c++類中private定義的變數怎麼在類成員函式中用?

9樓:匿名使用者

你的意思是不是怎麼給name賦值?

可以用建構函式

或者用個輸入函式

class home

//建構函式

void input();

void buy(int num,double price);

void show( );

};void home::input( )

10樓:匿名使用者

你這不就是直接是個例子了嗎?

private宣告的成員變數就是在所有成員函式內都能訪問,但是不能被外部訪問.

11樓:匿名使用者

可以有兩種方式呼叫成員函式,一種是

物件名.函式名(引數)就像樓主給你那樣,home1.buy(6,300)

一種就是定義物件指標

例如home *p;

p->buy(6,300);

12樓:匿名使用者

這一個就是一個很好的例子

為什麼在c++中可以用::呼叫其他類的成員函式?

13樓:匿名使用者

雙冒號 :: 操作符被稱為域操作符(scope operator),含義和用法如下:

1.在類外部宣告成員函式。void point::area(){};

2.呼叫全域性函式;表示引用成員函式變數及作用域,作用域成員運算子 例:system::math::sqrt() 相當於system.math.sqrt()。

3.呼叫類的靜態方法: 如:cdisplay::display()。

把域看作是一個可視視窗全域性域的物件在它被定義的整個檔案裡,一直到檔案末尾都是可見的。在一個函式內被定義的物件是局域的(local scope), 它只在定義其的函式體內可見。每個類維持一個域,在這個域之外 ,它的成員是不可見的。

類域操作符告訴編譯器後面的識別符號可在該類的範圍內被找到。

14樓:匿名使用者

只有靜態成員這樣呼叫才行,如果不是靜態成員,可能在a::getnumber();這個函式中又呼叫了a類其它成員變數,這樣就肯定會出錯誤了

15樓:匿名使用者

getnumber();函式是靜態函式的話,就可以直接a::getnumber();

c可以直接在標頭檔案中,寫函式的定義

可以啊,實現寫在h檔案的類裡的話就是預設內聯的 是什麼錯誤呢?如何在c 標頭檔案中定義函式,然後在原始檔中使用 在text。h標頭檔案中進行宣告 include using namespace std void display int,int 使用該函式來實現輸出 在texxt。cpp中進行定義,注...

關於C 中類成員函式返回值的疑問

問題1 返回date臨時物件的時候,會在記憶體中臨時建立一個date物件,這個物件是臨時性的,當所在的語句結束之後就會被收回,就是不能再用了。而返回date類物件的引用的時候,返回的是該物件本身。比如你的第一個函式,返回的是this物件本身,所以可以對其進行操作,比如可以這樣操作 datea dat...

在c類中定義建構函式的目的是什麼

建構函式通常用於在例項化物件時自動對內部資料成員初始化,設定初始值 分配記憶體空間等。而解構函式則用於刪除物件時做收尾工作,比如釋放申請的空間等。要建立一個物件,就得呼叫建構函式。要銷燬一個物件,就會被迫的呼叫解構函式。如果成員函式宣告稱static,不建立物件也能呼叫 靜態成員函式。根據你的需要來...