C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

名前空間と名前空間の拡張


ここでは、名前空間を拡張する方法と、名前のない名前空間または匿名の名前空間を使用する方法を説明します。

1つの名前空間を定義できる場合があります。次に、同じ定義で名前空間を再度記述できます。最初のメンバーにメンバーがあり、2番目のメンバーに他のメンバーがある場合、名前空間が拡張されます。その名前空間のすべてのメンバーを使用できます。

#include <iostream>
using namespace std;
namespace my_namespace {
   int my_var = 10;
}
namespace my_namespace { //extending namespace
   int my_new_var = 40;
}
main() {
   cout << "The value of my_var: " << my_namespace::my_var << endl;
   cout << "The value of my_new_var: " << my_namespace::my_new_var << endl;
}

出力

The value of my_var: 10
The value of my_new_var: 40

名前のない名前空間には名前がありません。これらには異なるプロパティがあります。

  • 同じプログラムで直接使用できます。
  • これらは一意の識別子を宣言するために使用されます。
  • このタイプの名前空間では、名前空間の名前はコンパイラ自体によって一意に生成されます。
  • これは、これが作成されたファイルからアクセスできます。
  • 名前のない名前空間は、変数の静的宣言に代わるものです。

#include <iostream>
using namespace std;
namespace {
   int my_var = 10;
}
main() {
   cout << "The value of my_var: " << my_var << endl;
}

出力

The value of my_var: 10

  1. Pythonの名前空間とスコープ

    Pythonでは、変数、関数、ライブラリ、モジュールなどを扱います。使用する変数の名前が、別の変数の名前として、または別の関数や別のメソッドの名前としてすでに存在している可能性があります。このようなシナリオでは、これらすべての名前がPythonプログラムによってどのように管理されているかを知る必要があります。これが名前空間の概念です。 以下は名前空間の3つのカテゴリです ローカル名前空間:プログラムによって宣言された関数と変数のすべての名前は、この名前空間に保持されます。この名前空間は、プログラムが実行されている限り存在します。 グローバル名前空間:この名前空間は、Pytho

  2. Redis.ioの更新と拡張

    本日、Redis.ioのリニューアルを発表できることをうれしく思います。 Redis.ioは、常にRedisのホームであり、新しいRedisユーザーのエントリポイントです。今回のリリースでは、サイトのデザインを最新化し、インフラストラクチャを更新しながら、コアのRedisドキュメントを改訂しました。 この投稿では、サイトの再起動の動機について説明し、Redis.ioサイトの改訂で採用した原則を共有し、次の内容をプレビューします。 Redis.ioの更新 Redisは、最初のコミットから13年で長い道のりを歩んできました。現在、基盤となるデータベーステクノロジーとして確立され、世界中のデ