2014-02-08 58 views
-6
class Program 
{ 
    static void Main(string[] args) 
    { 
     string s= sum("jfjf"); 

    } 


    void sum(string xx) 
    { 
     Console.WriteLine(xx); 

    } 
} 
+3

它有什麼「錯誤」? (有多個編譯器錯誤,其中一個是'void'方法*沒有返回值*,因此*不能在表達式*中使用,但是請*讀取錯誤*並在您的文章中包含此類錯誤消息/症狀*逐字*。 ) – user2864740

回答

1

您試圖從靜態方法中調用無效的實例方法。你也必須從方法返回一個字符串,因爲調用者期待它。

它改成這樣:

class Program 
{ 
    static void Main(string[] args) 
    { 
     string s= sum("jfjf"); 

    } 


    static string sum(string xx) 
    { 
     Console.WriteLine(xx); 
     return xx; 

    } 
} 
+0

static string sum(string xx) – turtlepick

+0

謝謝jjbhhjbj – user2974565

3

你的方法返回void這意味着沒什麼,而是你正試圖將其分配到的字符串。

要麼改變你的方法的定義是這樣的:

static string sum(string xx) 
{ 
    Console.WriteLine(xx); 
    return xx; 
} 

還是不要嘗試爲它分配,只要調用方法:

sum("jfjf"); 

你應該讓靜態的一點,因爲你的Main方法是靜態的。您不能在靜態上下文中調用非靜態方法。

+0

錯誤無法將類型'void'隱式轉換爲'string' – user2974565

相關問題