2011-10-31 78 views
14

沒有爲類或方法如何在VS 2010中編寫變量/字段/列表的註釋/文檔?

///<summary> 
///This is summary for some class or method 
///</summary> 

文檔。但是,如何爲簡單變量或列表編寫此代碼?

我使用Visual Studio 2010,當我將鼠標懸停在某個列表,屬性或任何我希望看到某種摘要(在那個小工具提示中)時,我已經寫入了該特定的事情。

///<doc> 
///always use this list! 
List<String> beer = new List<String>(); 

編輯:好吧,我們已經發現了,它的工作原理像往常一樣,只要ü評論在您的類,但外的方法或功能!

任何方式也可以在方法中記錄/評論嗎?

public class BeerForall 
{ 
    /// <summary> 
    /// it works here 
    /// </summary> 
    public List<String> beer = new List<string>(); 

    public String giveBeer() 
    { 
     /// is not working, u can not comment 
     /// <summary> 
     /// test test, not working 
     /// </summary> 
     List<String> moreBeer = new List<string>(); 

     return "beer"; 
    } 
} 
+3

它工作正常的所有屬性和領域,也不會可能在函數的任何變量工作? – gideon

+0

該死的,你說得對:/不能用方法工作。在一個類中,你可以照常編寫文檔,但在一個方法/函數中它不起作用!任何方式使它工作? – Gero

+0

是的,它適用於方法嗎?你的方法在哪裏定義,你從哪裏調用它?如果它顯示intellisense評論將顯示。可能需要幾秒鐘才能加載。 – gideon

回答

10

似乎在Visual Studio 2010中工作得非常好。我將List定義爲一個私有字段,在我的MainForm類中有註釋。

雖然它們在函數中定義的局部變量不起作用。

enter image description here

+0

在它自己的類中工作。但嘗試在方法中記錄某些內容。看到我編輯的第一篇文章 – Gero

+3

是的,這就是我在你的問題的第一個評論中所說的,你不能記錄在方法本身內定義的變量。 – gideon

+0

好的,編輯你的帖子在這裏,我可以標記它! – Gero

0

與爲類和方法編寫摘要的方法同樣適用於變量。

5

據我所知,智能感知添加註釋不會爲函數內聲明的局部變量工作。如果你想讓你的本地列表成爲這個類的一個實例變量,你可以做到這一點。

12

正如其他人所說,你無法獲得本地變種的智能感知。但是:如果你的函數太大以至於「常規」註釋不夠近,無法在你使用var的地方讀取,那麼正確的修復就是重構函數 - 將其分解爲多個,更小的方法,更少的變量。我認爲這個功能應該是的存在,因爲它只會幫助編寫過大的函數。

+1

也許你沒有看到這可能是有用的。我建議你看看doxygen。在doxygen中,無論您可以在函數之前寫入註釋中的任何文檔,您也可以在該函數中編寫這些文檔。這允許您繼續舉例說明部分,並解釋算法,將代碼和文檔交錯在一個非常接近文字編程的風格中。一些代碼片段受益匪淺。 – migle

+0

重構代碼是好的,但我沒有看到如何從程序員身上拿走工具是實施良好編碼實踐的有用「特徵」。 FWIW我認爲它不工作,無論誰寫我現在維護的代碼庫沒有說「哦,我不能評論局部變量,這意味着我現在要更好地編寫代碼」。此外,假設如果這真的被遺漏以鼓勵一種良好的編碼風格,爲什麼局部變量Intellisense評論適用於C/C++而不是VS2013中的C#? – jrh

+2

「我不認爲這個功能應該存在,因爲它只會幫助編寫過大的功能。」我認爲它應該存在,除非你可以重寫我必須處理的30k +後臺代碼行。 –