2008-12-29 74 views
5

我不確定問題出在哪裏,但是當我嘗試在代碼中使用while語句時,我一直收到此錯誤。非常簡單的代碼中的類,結構或接口成員聲明中的'while'無效令牌

無效令牌「而」類, 結構或接口成員 聲明

我想用一個while循環有東西,而一個說法是正確的不斷更新。

我的代碼的其餘部分是相當長的,但每當我在語法類型:

while(a<b) 
{ 
//do whatever i want it to do here 
} 

它給我,編譯器錯誤馬上蝙蝠。不太清楚問題是什麼。我在Form1.cs文件下的C#windows應用程序中使用所有其他事件處理程序(對於按鈕等)執行此操作。 謝謝!


我不知道循環必須放在一個方法(相當新的C#),但我試過了,沒有錯誤返回。感謝您的幫助!

以前,我只是在程序的主類中有循環。

回答

25

基於這個錯誤,聽起來像編譯器認爲這個代碼是直接在類/結構體/接口聲明的主體中輸入的。 while/if/for/etc ...必須在方法中出現。

嘗試將此代碼移到解決問題的方法中。如果它是在一個方法中,你可能有一個不匹配的大括號問題。

3

這段時間沒有什麼問題,它是上面的問題。 檢查註釋或類似內容中不匹配的大括號和分號。

+0

這是肯定的。 – 2008-12-29 02:44:06

2

C#不允許將代碼直接寫入類中;它只允許將數據成員和函數成員直接寫入類中。

0

你也可以得到這樣的,如果你有標點符號的問題,今天我得到了它,當我缺少一個簡單的括號:

public static string GetPasswordForEnvironment) 

應該是:

public static string GetPasswordForEnvironment() 

但錯誤上露面函數後面的第一個「if」語句。

相關問題