すべてのc ++コースでは、すべての教師が常にsのusing namespace std;
直後にファイルを配置#include
してい.h
ます。そのヘッダーを別のプログラムに含めることにより、おそらくそれを実現、意図、または希望せずに名前空間をプログラムにインポートすることになるので、これは危険に思えます(ヘッダーの組み込みは非常に深くネストされる可能性があります)。
だから私の質問は二重です:using namespace
ヘッダーファイルで使用してはいけないことは正しいのでしょうか?
//header.h
using namespace std {
.
.
.
}
同じラインに沿ってもう一つ質問:万一のヘッダーファイル#include
すべてのヘッダーそれが対応だと.cpp
ファイルのニーズを、のみヘッダー定義のために必要であるとしましょう.cpp
ファイル#include
休息、またはそれとして必要なしと宣言すべてをextern
?
質問の背後にある理由は上記と同じ.h
です。
また、私が正しい場合、これはよくある間違いですか?実際のプログラミングとそこにある「実際の」プロジェクトのことです。
ありがとうございました。
using namespace
ステートメントが原因で名前の衝突が発生した場合は、完全修飾名を使用して問題を解決できます。