首页 > 代码库 > 函数模版和主函数分别在.h .cpp中(要包含.cpp)
函数模版和主函数分别在.h .cpp中(要包含.cpp)
Complex.h #pragma once #include<iostream> using namespace std;//这句还必须加,要不然致错,不懂为啥呢 template <typename T> class Complex { public: Complex( T a); ~Complex(); Complex operator + (Complex & c1); public: friend ostream & operator << <T> (ostream &out, Complex & c2); private: T a; };
Complex.cpp #include "Complex.h" template <typename T> Complex<T>::Complex(T a ) { this->a = a; } template <typename T> Complex<T>::~Complex() { } template <typename T> Complex<T> Complex<T> ::operator + (Complex<T> & c1) { this->a = this->a + c1.a; return *this; } template <typename T> ostream & operator << (ostream &out, Complex <T> & c2) { out << c2.a; return out; }
test.cpp #include<iostream> #include"Complex.cpp"//这里至关重要!!! using namespace std; int main() { Complex <int> a(5); cout << a; system("pause"); return 0; }
要包含.cpp这点异于常类 易错误
函数模版和主函数分别在.h .cpp中(要包含.cpp)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。