1樓:網友
chengji thechengji = new chengji();
有問題,chengji類沒有建構函式,不能例項化。可以吧方法的名稱改為與類同名,這樣呼叫 new chengji()就可以構造出新的物件thechengji並且完成初始化。
如果要更動態化一些應該寫乙個add()方法來新增資訊。
建議用list類來代替陣列儲存資訊。
public struct user //user只需定義為結構就夠了,不需定義為類。
public string name;
public int xuehao;
public user(string _name,int _xuehao)
public class chengji
chengji不需要繼承自user,它沒有實現user的欄位。
private listxueshen; /尖括號中給出資料型別。
public chengji()
如果要例項化,建構函式不可省略即使是空的。
這個函式用於給物件初始化。注意建構函式不能。
給出函式型別,因為建構函式返回型別是確定的,即它所在的類。它必須與類同名。
public void add(user u)
public string this[int id]
get public int this[string xm]
get {int? i=null; /加?表示可空型別,萬一找不到。
資料可以給i空值,不是所有類都可以。
foreach(user u in xueshen)if(;
用foreach語句遍歷xueshen list類。
if(i!=null)return (int)i;//int?與int是不同型別要強制轉換。
else "沒找到";
用這段**呼叫試驗一下:(page_load方法改為如下)
chengji c=new chengji();
user("李四",100));
user("張三",101));
c["李四"].tostring();
關於那個錯誤:
錯誤「int」並不包含「tostring」的定義。
很容易發現你拼錯了,c#大小寫是有區別的不像vb
int只有tostring()方法有定義,沒有tostring()
2樓:
public string this[int id]
get 這裡你定義為int, = thechengji["李四"].tostring();
這內引用string,你看看是不是這裡吧。
3樓:網友
如果你這段**是直接從vs裡面複製出來 我估計是大小寫的問題~應該是tosring(),你這邊是tostring(),這種情況我也常常遇到~
c#中索引器的特點?急~
4樓:網友
索引器:是c#引入的乙個新型的類成員,一種特殊的類成員,它能夠讓物件以類似陣列的方式來存取,使程式看起來更為直觀,更容易編寫。
索引器型別於屬性,它們的不同之處在於索引器的訪問器採用引數。
定義了索引器之後,就可以像訪問陣列一樣,使用運算子訪問類的成員。
定義索引器的方式與定義屬性有些類似,其一般形式如下:
修飾符] 資料型別 this <[資料型別 識別符號]>set}
C 初學者問題
1全部for語句和while語句都是用於迴圈的 while迴圈語句是用來實現 當型 迴圈結構。其一般形式如下 while i 100 說明,是在i 100的時候,執行while裡面的語句,即sum sum i i 當i 100的條件不滿足的時候,就跳出該迴圈,執行下面的語句。而for迴圈語句是應用起...
初學者關於C語言和C 的相關問題
在c的基礎上,一九八三年又由貝爾實驗室的bjarne strou strup推出了c c 進一步擴充和完善了c語言,成為一種物件導向的程式設計語言。c 目前流行的最新版本是borland c symantec c 和microsoft visualc c 提出了一些更為深入的概念,它所支援的這些物件...
C語言初學者的教材選擇問題,求高手解答
首先,國內的教材,一本不要看,尤其譚浩強。下面推薦教材 c primer plus中文版 講的非常詳細和有趣,難度很低,非常適合初學者。前面有個朋友提到了 c programing language 也叫k r c,這本書是c語言界的聖經。經典的同時,難度是相當的大。書的厚度非常薄,但是把c講的很透...