C++ のテンプレートとの循環依存関係について質問があります。Rotation3 と Vector3 の 2 つのテンプレート クラスがあります。回転は水平および垂直回転を保持しますが、ベクトルには xy および z コンポーネントがあります。
各クラスに他のクラスのコンストラクターを持たせたい:
Vector3<T>::Vector3(const Rotation3<T>& rot)
と...
Vector3<T>::Rotation3(const Vector3<T>& vec)
ただし、テンプレートは .cpp ファイルに配置できず、.h に配置する必要があるため、Vector3.h と Rotation3.h の両方が、コンストラクターで相互に使用するために相互にインクルードする必要があることを意味します。 . これは可能ですか?
事前に助けてくれてありがとう、私はC ++にかなり慣れていないので、経験のある人がこれをどのように設計するかを本当に知りたい.