是否有任何區別:在C#命名空間點命名空間和嵌套命名空間有什麼區別?
namespace Outer.Inner
{
}
而且
namespace Outer
{
namespace Inner
{
}
}
?
是否有任何區別:在C#命名空間點命名空間和嵌套命名空間有什麼區別?
namespace Outer.Inner
{
}
而且
namespace Outer
{
namespace Inner
{
}
}
?
沒有任何區別,那些是一樣的,但是第一種是比較常見的。
不,但第一個變體是最常用的C#代碼。
第二個變體是你必須用C++寫的東西,我不確定我是否真的在真正的C#代碼中看到它。
假設您不在Outer
命名空間中放置任何其他聲明或using
指令,則根本沒有任何區別。
鑑於你會很非常很少聲明一個文件內的多個命名空間中的成員,我建議使用第一種形式 - 除了其他任何東西,它可以節省一定程度的縮進。需要注意的是「梅開二度在新行的開始」是C#,雖然較傳統的支撐方式:
namespace Outer.Inner
{
...
}
謝謝,我已經用C++進行編程了一段時間,而且我真的不喜歡在新行開始的時候使用大括號,我不知道爲什麼,但是我很難讀這樣的代碼! – paul 2014-10-01 20:14:54
@paul:儘管支撐約定不像命名那樣普遍,但我認爲值得讓自己沉浸在語言最常見的約定 - 你會很快習慣它,然後所有的例子等等你會在網上閱讀會更容易閱讀...... *和*閱讀你的代碼(從C#背景)的任何人都會發現它更易於閱讀。 – 2014-10-01 20:16:45
謝謝,我將盡力做到這一點,但我已經看到這個網站上的一些圖書館:http://referencesource.microsoft.com/使用支持相同的風格,因爲我使用,但我想你是對的,感謝提示! – paul 2014-10-01 20:19:44
在我的經驗,但是第一個選項是更清潔,並消除了多層嵌套。這對於讀取你的代碼的其他人來說是非常有幫助的,但是正因爲如此,代碼纔是自由的。明智地使用。 – SnareChops 2014-10-01 20:11:18