void bookmanger::add() //bookmanger類已經定義好了,add函數也寫完整了,但是調用的時候怎么調用啊我調用的時候寫的是bookmanger::add();但是編譯出錯:cannot call function"bookmang::add()"without object
3 回答

鳳凰求蠱
TA貢獻1825條經驗 獲得超4個贊
函數調用的一般形式為:
函數名(實參列表);
實參可以是常數、變量、表達式等,多個實參用逗號分隔。
在C語言中,函數調用的方式有多種,例如:
// 函數作為表達式中的一項出現在表達式中
z = max(x, y);
m = n + max(x, y);
// 函數作為一個單獨的語句
printf("%d", a);
scanf("%d", &b);
// 函數作為調用另一個函數時的實參
printf( "%d", max(x, y) );
total( max(x, y), min(m, n) );
在函數調用中還應該注意的一個問題是求值順序。所謂求值順序是指對實參列表中各個參數是自左向右使用呢,還是自右向左使用。對此,各系統的規定不一定相同。

青春有我
TA貢獻1784條經驗 獲得超8個贊
不能用類名調用,要用對象名來調用,比如你可以這樣做:先定義一個對象,再用這個對象來調用函數:
bookmanger bm1;
bm1.add();
如果你一定要用類名來調用,可以定義函數為static:
static void bookmanger::add()

慕田峪4524236
TA貢獻1875條經驗 獲得超5個贊
先實例化一個對象,bookmanager bm1;
bm1.add();這樣調用。
bookmanger::add()這樣的調用方法只有在有方法覆蓋或重寫時才能調用,或者將該方法設為靜態方法。
- 3 回答
- 0 關注
- 185 瀏覽
添加回答
舉報
0/150
提交
取消