模板中的C 未知类型名称

c++ unknown type name in template

本文关键字:类型 未知      更新时间:2023-10-16

我是C 的新手,我有一个非常简单的程序,但无法编译。

darray.h

#ifdef DARRAY_H
#define DARRAY_H
namespace myspace{
    template<class T>
    class DynamicTypeArray{
    public:
           DynamicTypeArray(); 
    private:
           int length;
    };
}
#endif

darray.cpp

#include "Darray.h"
namespace myspace{
    template <class T>
    DynamicTypeArray<T>::DynamicTypeArray(){
         length = 0;
    }
}

我认为这很简单,但是当我尝试用

编译它时

g darray.cpp

它给我一个错误

未知类型名称" dynamictypearray'

我在这里做错了吗?这个问题让我现在疯狂。

谢谢

c 模板的构建方式(afaik)您不能将模板类别分配在标题(.h)和实现(.cpp)文件中。