下面的代码编译完美:使用模板圆形夹杂
// MyFile.h
#ifndef MYFILE_H_INCLUDED
#define MYFILE_H_INCLUDED
template <typename Datatype>
class MyClass
{
public:
void MyMethod();
}
#include "MyFile.cpp"
#endif
// MyFile.cpp
#ifndef MYFILE_CPP_INCLUDED
#define MYFILE_CPP_INCLUDED
#include "MyFile.h"
template <typename Datatype>
void MyClass<Datatype>::MyMethod()
{
// ...
}
#endif
的其它方法和函数的定义可以从声明中相同的方式进行分离。使用这种方法有什么缺点吗?这种行为可以依赖吗?
什么是你想在这里完成? – ltc 2011-03-29 04:15:11
@GMan是'.tpp'这种事情的“标准”文件扩展名,或者它可能只是任何不会被编译的东西? – Maxpm 2011-03-29 04:17:43
标准有点强。比较常见的是更好的描述。 – 2011-03-29 04:19:30