答えて
の違いは、それは「グローバル」名前空間何される - それは考慮に他のusingディレクティブを取ることなく名前を探すために、コンパイラを強制的に。たとえば、あなたが持っていたとします
public class Bar{}
namespace Foo
{
public class Bar {}
public class Test
{
static void Main()
{
Bar bar1 = null; // Refers to Foo.Bar
global::Bar bar2 = null; // Refers to the "top level" Bar
}
}
}
は、基本的には名前の衝突を回避する方法です - あなたはツールが必ずしも内の他のすべてのタイプを知らないツールによって生成されたコード、でそれを見ることが最も可能性が高いですシステム。手作業で書かれたコードでそれを必要とすることはめったにありません。
は::
namespace qualifierとともに、より多くの詳細については、MSDNで"How to: Use the global namespace alias"を参照してください。
これは、グローバル名前空間の別名です。あなたのコードベースでSystem.Int32
と呼ばれる型を宣言した場合
は、あなたがこのエイリアスを使用して.NETの一つに組み込まれて区別することができます。
// your code
namespace System
{
public class Int32
{
}
}
// You could reference the BCL System.Int32 like this:
global::System.Int32 bclInt;
System.Int32 myInt;
MSDNのHow to: Use the Global Namespace Alias (C# Programming Guide)を参照してください。
あなたの 'Int32'は' global :: System.Int32'です:あなたの 'System'名前空間はネストされていません。また、名前空間には可視性がありません。 – hvd
@hvd:もちろん、名前空間には可視性があります。 * hidden *である可能性があるため* visible *を持たなければなりません。* hidden *名前空間は定義上*可視ではありません*。たぶんあなたは名前空間に*アクセシビリティ*がないと言っていたと思いますが、それは名前空間のアクセシビリティを特徴づける奇妙な方法です。それを考える良い方法は、すべての名前空間が一般公開されていることです*。 –
@EricLippert私は隠された名前空間について聞いたことがないと認めます。それを見てみましょう:内部クラスだけを含む外部アセンブリ内の名前空間を参照していますか?そうであれば、Visual StudioとC#コンパイラは、表示されているかどうかについて意見を異にします。「using System.Data.Entity.Internal;」にはエラーとして下線が引かれますが、コンパイラによって受け入れられます。私は仕様が何を言っているのか分からない。 – hvd
グローバル名前空間を参照するために使用されます。既に他の場所に存在する名前空間にコードを記述する場合に便利です。
は、より多くの情報のためにこれを参照してください:そうですねhttp://msdn.microsoft.com/en-us/library/c3ay4x3d.aspx
- 1. グローバル::とは何ですか?
- 2. Cのポインタとグローバル変数の違いは何ですか?
- 3. C++の静的グローバル識別子と静的グローバル識別子の違いは何ですか?
- 4. グローバル変数用のJava独立ファイル
- 5. C#グローバル変数
- 6. C++グローバルcharポインタ?
- 7. CとC++の静的グローバル変数とexternグローバル変数
- 8. 2つの「グローバル」/アプリケーションレイアウト
- 9. グローバル変数やC#
- 10. objective-c - グローバル変数
- 11. 弱いグローバル参照は何ですか?それはグローバル参照とどのように違うのですか?
- 12. devDependenciesをグローバルにインストールするnpmコマンドとは何ですか?
- 13. PHP $ GLOBALS ['variable']の違いは何ですか?グローバル$変数。
- 14. Rubyの番号付きグローバル変数は何ですか
- 15. C++のサーバーインスタンスのグローバル変数
- 16. ポインタをグローバルにするC++
- 17. C#とXMLのデシリアライズ:グローバル化
- 18. PHPのグローバル変数にカスタム情報を送信するのに役立つ
- 19. =グローバル
- 20. C++でのグローバルDB接続の管理
- 21. dlsymでCのグローバル変数にアクセスできません。
- 22. C# - グローバルな内部const?
- 23. グローバル配列がウィンドウC#
- 24. メトロAppグローバル変数C#
- 25. グローバル(function(global){some code ..})(this)は何をしますか?
- 26. C++でのグローバル例外処理
- 27. Cコードベースでグローバル/静的変数を見つけるツール
- 28. pythonグローバル変数が保存されていませんグローバル
- 29. グローバル配列内の要素の位置を指すグローバル変数(C言語)
- 30. C++のグローバル変数を変更する
.edmxファイルからコードを生成しようとすると、これは、マイクロソフトのエンティティフレームワークによって生成されます。ありがとうございます – user1010572