模板类 头文件 重复定义
模板类的定义和函数实现是不能分开的,这样多个文件包含模板类头文件时就会出现函数重复定义的问题,怎么避免这个问题呢...
模板类的定义和函数实现是不能分开的,这样多个文件包含模板类头文件时就会出现函数重复定义的问题,怎么避免这个问题呢
展开
2个回答
展开全部
在文件的头文件中,需要加入预编译的语句。就是 #ifndef ... #define...#endif
目的就是为了防止重复编译。只需要把你的头文件加入到这里就好了。
如:
#ifndef MYTEMPLATE_H
#define MYTEMPLATE_H
#include "mytemplate.h"
......
......
#endif //MYTEMPLATE_H
目的就是为了防止重复编译。只需要把你的头文件加入到这里就好了。
如:
#ifndef MYTEMPLATE_H
#define MYTEMPLATE_H
#include "mytemplate.h"
......
......
#endif //MYTEMPLATE_H
更多追问追答
追问
预编译语句我加了,对于非模板类,程序可以实现类定义和函数定义的分离。现在问题是编译器不支持模板类定义和函数定义的分离
追答
请问你的编译环境是c++么,模板类的定义之后,如果函数定义需要引用,就需要加入 template
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询