怎麼在C類裡呼叫普通函式,最好舉個例子

2021-03-04 09:01:16 字數 1938 閱讀 4799

1樓:在下姓周

跟c語言一樣呼叫

//test.h

class test

;//test.cpp

//標頭檔案包含省略

void func()

test::test()

void test::callfunc()//main.cpp

#include "test.h"

void func2()

int main()

c++程式設計中乙個類的兩個物件之間如何相互呼叫,最好舉乙個列子,謝了

2樓:匿名使用者

屬於同乙個類的兩個物件是產生出來的類的兩個不同的例項,顯然不能互相訪問版私有成員變數權

有相同的屬性和方法是不錯,不過它只能訪問自己的成員變數,不能訪問其他例項的成員變數

乙個類的私有成員連它派生出來的子類都無法訪問,其他類更不能訪問

3樓:匿名使用者

假設呼叫bai的是類的公有成員數du據(如果是私有成員,則zhi可以通過類方dao

法得到,情況類版似);

如果乙個權成員函式要呼叫同一類的兩個物件,只需要將該類 型別作為成員函式的形參,如下:將a類中相應的資料成員加起來,成員函式add可以寫成(為了防止改變形參類的值,可以將其設為const 的引用):

class a

//建構函式等

};在使用時 如 a a,b;

a.add(b)就可以達到你想要的結果;

c++類成員函式呼叫乙個普通函式,而普通函式的乙個形參是function模板函式

4樓:匿名使用者

使用std::bind

std::bind(&***::b,this, std::placeholders::_1, ....) //有乙個引數要被外部傳遞

***::b 類函式

this 類物件指標,也可以具體的物件指標,如**** px; 傳px;

std::placeholders::_1 需要被傳遞的引數個數

另外可以在std::bind的時候額外傳遞引數

如:double ***::c(double *para, bool su);

std::bind(&***::c,this, std::placeholders::_1, true) // 外部傳乙個引數,這裡額外傳乙個引數

std::bind(&***::c,this, std::placeholders::_2) // 外部傳二個引數,就不能額外傳引數了

可以使用以下巨集定義,出自cocos2dx

placeholders::_1, ##__va_args__)

placeholders::_1, std::placeholders::

_2, ##__va_args__)

placeholders::_1, std::placeholders::

_2, std::placeholders::_3, ##__va_args__)

python中怎麼在函式內呼叫另外函式類似

將event.py目錄加入到版system path中權 python中怎麼在乙個函式內呼叫另外乙個函式,類 1,如果呼叫在另外乙個.py裡面的函式,先導入 py,然後呼叫2,如果在本py裡面,則把要呼叫的函式放在前面,直接呼叫,例如 def sum a,b return a b c sum 5,6...

c工程裡檔案怎麼呼叫另外檔案裡的函式

在b.cpp中 一般在檔案開始處 作外部宣告,語法格式為 extern 函式原型 例如 extern int fun int n,int k 前提為,另乙個檔案中的函式,不能是靜態函式,即不能有static修飾。呼叫方法,內在呼叫前進行聲容明,然後直接呼叫即可。宣告方法 1 直接在呼叫前,寫函式宣告...

C中在類中呼叫其他類的方法,C中在乙個類中呼叫其他類的方法

static void printmenu 方法前少 public 前少public 預設是proctected型別的,只能是其父子類相關的才能呼叫,改成加上public型別 因為str 1 字串是引用型別,比較的並不是他們的內容,而是比較他們的指標,由於str和 1 是分別分配空間的,他們的指標指...