скажем, у меня есть класс А., который шаблонизируется в некотором пространстве имен NameSpaceA.
Я хочу использовать предварительное объявление в каком-то другом заголовочном файле. Я могу добиться этого, используя следующий синтаксис
File 1.h
namespace NameSpaceA
{
template <typename T>
class A
{
public:
void foo();
}
}
код, который работает для меня
File 2.h
//forward declaration
namespace NameSpaceA
{
template <typename T>
class A;
}
class B
{
private:
vector<NameSpaceA::A<specialization>* > mABC;
}
, но я хочу закодировать его с помощью используя ключевое слово .
Я попробовал следующий синтаксис
( код, который не работает )
File 2.h
//forward declaration
namespace NameSpaceA
{
template <typename T>
class A;
}
using A = typename NameSpaceA::A<specialization>;
class B
{
private:
vector<A>* > mABC;
}
, но ошибки объявления вектора с аргументом шаблона сообщения1 недействительно . Может кто-нибудь, пожалуйста, помогите мне написать этот элегантный способ.