亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

誰能解釋一下編譯出錯是怎么回事???

誰能解釋一下編譯出錯是怎么回事???

C++
慕標5832272 2022-08-04 19:15:16
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) );

在函數調用中還應該注意的一個問題是求值順序。所謂求值順序是指對實參列表中各個參數是自左向右使用呢,還是自右向左使用。對此,各系統的規定不一定相同。


查看完整回答
反對 回復 2022-08-08
?
青春有我

TA貢獻1784條經驗 獲得超8個贊

不能用類名調用,要用對象名來調用,比如你可以這樣做:先定義一個對象,再用這個對象來調用函數:
bookmanger bm1;
bm1.add();
如果你一定要用類名來調用,可以定義函數為static:
static void bookmanger::add()

查看完整回答
反對 回復 2022-08-08
?
慕田峪4524236

TA貢獻1875條經驗 獲得超5個贊

先實例化一個對象,bookmanager bm1;
bm1.add();這樣調用。
bookmanger::add()這樣的調用方法只有在有方法覆蓋或重寫時才能調用,或者將該方法設為靜態方法。

查看完整回答
反對 回復 2022-08-08
  • 3 回答
  • 0 關注
  • 185 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號