この質問に似たものを見つけるのに苦労しているので、代わりにここで質問します。
ダースほどのソース/ヘッダー ファイルを含むプロジェクトがあります。私が抱えている主な問題は、名前空間で作成したクラスを事前定義することです。コードは次のとおりです。
「GlobalIncludes.h」
/*include dependencies and library headers...*/
/*[Note 1]How would I predefine the classes inside namespaces?*/
typedef std::tr1::shared_ptr<Class1> ClassPtr1;//[Note 2]
typedef std::tr1::shared_ptr<Class2> ClassPtr2;//[Note 2]
/*[Note 2]What is the correct way to predefine the shared_ptr's?*/
#include "Class1.h"
#include "Class2.h"
「Class1.h」
namespace myNamespace
{
class Class1
{
/*variables and functions*/
void doSomething(...);
Class2 exampleObject;
};
}
「Class2.h」
namespace myNamespace
{
class Class2
{
/*variables and functions*/
};
}
これが少し混乱を招くように聞こえる場合は、事前にお詫び申し上げます... 基本的に、クラスを事前定義namespace myNamespace
し、同時に を宣言することが可能かどうか疑問に思っていshared_ptr
ます。これが可能である場合、どうすればこれを行い、ソースで正しく使用できますか?