C# での動作に似た名前空間階層を C++ で作成することは可能ですか? たとえば、C# 内で色を処理する型が必要な場合は、名前空間を調べて、次を使用して適切な型を取得できます。
System.drawing.color;
タイプ。この場合、名前空間はプロジェクト レベルで解決され、型が含まれる名前空間によって決定されるようです。このコードが対象とする開発者は、オートコンプリートでこれらすべてを取得し、そのタイプのフォルダーやファイルを検索する必要はありません。C++ では、最初に適切なヘッダー ファイルをインクルードする必要がある場合があります。その時点で、適切な型のソース コードを grep し、それらの型を含むファイルを見つけるという問題を既に経験したように感じます。C++ では次のようになります。
#include "Core/Color.h"
Color c = new Color();
IDE は、ここではほとんど役に立ちません。正しいタイプのディレクトリ検索を行う必要があります。ディレクトリのパラダイムは、誰もが適切なファイル名とディレクトリ構造を具体的に使用しない限り崩壊するように見えますが、常にそうであるとは限りません。
これを修正するには、すべての型の名前空間階層を考え出す必要があるように見えますが、これはそれほど大きな問題ではありませんが、ヘッダー階層も考え出して、これらのタイプを含む正しいファイルを見つけるためにコードを常に grep する問題。
マスター ヘッダー階層は、コンパイラ、プリプロセッサ、または結果のコンパイル済みコードに問題を引き起こしますか? 基本的に、他のすべてのヘッダーが新しいファイルに含まれているためです。
最終的には、現在実行しなければならないすべての grep を実行しなくても、IDE にすべての型に飛び込む方法を提供することで、このコードを使用する開発者を支援する方法が必要です。IDE内でこれをすばやく行う方法がすでにあるかもしれませんが、その時点で、この種の開発問題を解決するために言語自体を利用する必要はありませんが、見つけられないようです.