widgetを使用するこの小さなクラスがありstd::stringます。多くの場合、std::vector. ご覧のとおり、型名が非常に長くて煩わしいものになっています。
usingキーワードを利用したい、つまりusing std::string;
問題は、どこに配置するのが最適かということです。
// widget.h file
#ifndef WIDGET
#define WIDGET
// (1)
namespace example {
// (2)
namespace nested {
// (3)
class widget {
public:
// (4)
...
private:
// (5)
std::string name_;
...
};
}
}
#endif
私の質問は次のとおりです。
- 私が
(1)それを入れると、含まれているすべての人が自分のスコープを?widget.hで汚染することになります。string - 場所
(2)とでは、名前空間とが?を含む 2 番目のファイルで汚染される(3)という点だけが 1. と同じです。exampleexample::nestedwidget.h - 場所
(4)と(5)では、宣言はかなり分離されていますが、実装 (Cpp) ファイルと継承クラスで表示されますか?
前もって感謝します!