2012-07-22 72 views
3

在C#中是否有方法來聲明類,然後再定義它?我非常喜歡用C++,在那裏我可以像TOC一樣列出頂部的所有方法,然後再定義一切。如何聲明一個方法,然後再定義它?

可以這樣做是C#嗎?

我已經使用了定義一個方法的想法,它只是在其中運行一個類似命名的方法,然後類似的方法在底部。但我認爲有更好的方法和谷歌搜索返回一堆基本代碼創建類沒有答案。

所以這裏是我做的......

... 
public void methodA(){methodAcontent()}; 
public void methodB()...etc... 

...further down... 

private void methodAcontent(){ 
...All the code.. 
} 

有沒有更好的辦法?

回答

0
+1

抽象類存在於C++中,它是不同的東西 – 2012-07-22 18:03:31

+0

它存在於'C++'中並不能消除它在'C#'中的存在和含義。這與OP的要求「相似」。 – Tigran 2012-07-22 18:04:41

1

爲什麼你需要那個?

C#正在使用多通道編譯,所以函數的定義和使用位置並不重要。你可以在類的末尾定義函數並在開始時使用它,它仍然可以很好地編譯。

此外IDE還可以幫助您。您可以摺疊所有方法的主體,在一個組合框中有所有方法的列表,InteliSense在尋找正確方法方面極其有用。

在C#中使用C++的實踐是一個非常糟糕的主意,因爲它們在解決問題的方式上存在很大差異。

+1

這是強迫症的事情..乾淨的代碼。 – wondernate 2012-07-22 18:21:44

+1

當我瀏覽一個c#課程時,我只想看到它的公開api而沒有看到細節。我也不希望被一個像Visual Studio這樣的編輯者束縛,並且爲我提供這個,例如'少MyClass.cs'應該輸出可跳過的代碼。在JavaScript中,這可能是由於函數提升。 – aaaaaa 2017-08-18 04:37:29

0

在C#語言中沒有這樣做的好方法,但Visual Studio IDE可以將文件摺疊爲其定義,然後您可以單獨展開文件(請參閱this)。這與code regions一起幫助我組織更長的文件。

0

如果你這樣做是爲了將公共接口「文檔化」到正確封裝問題域中的概念或對象的類,然後使用接口。

如果您將其作爲獲取「概覽」類的結構的方法,那麼Visual Studio有幾種方法可以爲您提供此類結構。您可以將代碼摺疊爲其定義(Ctrl + M,O),或者查看類視圖(Ctrl + W,C)。哈哈!

相關問題