如何定义模板类的构造函数?

时间:2019-07-19 04:33:36

标签: c++ templates

我尝试在源文件中创建构造函数,但是当我在主源文件中访问它时会抛出错误

我尝试只在类声明中定义构造函数,它可以工作,但是它使代码混乱,我想在其他源文件中定义它

在我的main.cpp中

#include "m.h"

int main(){
    m<int> m(8);
    return 0;
}

在我的时间:

#ifndef M_H
#define M_H

template <class T> m{
    public:
        m(int a);
    private:
        T* b;
}

#endif

在我的m.cpp中

#include "m.h"
template<class T> m<T>::m(int a){
    b = new T[a];
}

它抛出一个错误说     未定义对m :: m(int)

的引用

0 个答案:

没有答案