關於C 類的問題。。急,關於C 類别範本的問題。。急

時間 2021-09-12 00:09:21

1樓:

過載錯誤,不能區別2個過載函式

templateconst t& array::operator(size_t index) const//加上const就能區別了

//////////////////給你個例子#include

using namespace std;

class a

void fun(int b)

void fun(int b)const

};int main()

/////////

類的非靜態成員函式,編譯器預設的會在引數列表最左面加上個this指標作為引數,在方法後面加const就是修飾this指標所指向的物件的,當然就this指標就指向物件自己,所以非靜態成員方法後面加const的方法就不能改變類中成員變數的值了,

同時和非const方法相比,引數型別不同,所以也就滿足過載條件了

2樓:匿名使用者

第二個後面加上 const即可。因為不允許對參數列相同而返回值不同的情況作過載。加上const後,const修飾this,引數不同。

在前面加,修飾的是返回值;在後面加,修飾的是函式的this指標。類的每個非靜態成員函式的第一個引數都是this指標。

3樓:

一個程式執行是需要main函式的,把模板巢狀到具體程式中就可以,這個模板只不過是程式的一部分

關於C 中類的問題,關於C 中類别範本的問題

include 標頭檔案以 h 結尾 using namespace std template class complex template void complex set t a,t b 類函式在函式體外定義要寫template 類名後要加,下面同此 template void complex ...

C 關於char陣列的問題,關於C char型別陣列長度的問題

可為什麼下標引用超出定義沒有錯誤 因為宣告char陣列的時候,b只是被宣告為指向char陣列第一個地址的指標。用操作符取資料的時候,編譯器看成是首地址向後偏移 char型別的長度 序號 超過了界限之後,至於後邊取到什麼意外資料就不一定了。所以一般需要使用char陣列儲存一個長度為n的字串的時候都宣告...

c網路程式設計的問題,關於TcpClient類

1 read放在while裡面,也可以非同步接收,2 你的第二個問題可以用 訊息邊界 來解決,不用非同步的話,必須是你一條,我接收,再發,不然會阻塞 3 另開執行緒接收,建議你看一下msdn,裡面有一個關於執行緒的返回值的文章 問題3 例項化client後要開一個執行緒來讀寫資料的。1 對,read...