
Template.h
#ifndef TEMPLATE_H_#define TEMPLATE_H_template<class T>class Template{public: T Add(T a,T b);};#endif /* TEMPLATE_H_ */ Template.cpp
#include "Template.h"template<class T>T Template<T>::Add(T a,T b){ return a+b;} Main.cpp的
#include "Template.cpp" //Is this a good practise? #include <iostream>int main(int argc,char **argv) { Template<int> obj; std::cout<<obj.Add(3,4)<<std::endl;} 如果这不可行,那么我该如何解决这个问题呢?出口?
解决方法 编译器需要访问方法的实现才能实例化模板类,因此最常见的做法是在头文件中包含模板的定义,以声明该模板或在头文件中定义它们.见Why can templates only be implemented in the header file?
总结以上是内存溢出为你收集整理的c – 模板类实现中单独的.h和.cpp文件全部内容,希望文章能够帮你解决c – 模板类实现中单独的.h和.cpp文件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)