关于一个类模板定义的问题(关于export)
template<class Type>
的作用范围是不是就是下一个类的定义,或者其中一个类函数的实现啊?
类的定义完成之后,在下面的代码中Type 还有作用吗?
还有。。。 export template<class Type> 里面 export 的作用是什么。。
是不是代表可以单独在一个源文件里面完成类函数的编写。。。
为什么不加这个东西就不可以了?
额。。。如果要用export。。。这个是加在声明的头文件里面
还是加在实现的源文件里面啊= =
基础我不清楚啊。。。 Cpp primer plus 上面一笔带过了这个问题。。。
还有VS2010支持这种功能吗?
[解决办法]
换一本教材。
[解决办法]
为了访问其他编译单元(如另一代码文件)中的变量或对象,对普通类型(包括基本数据类、结构和类),可以利用关键字extern,来使用这些变量或对象时;但是对模板类型,则必须在定义这些模板类对象和模板函数时,使用标准C++新增加的关键字export(导出/出口/输出)。例如:
extern int n;
extern struct Point p;
extern class A a;
export template<class T> class Stack<int> s;
export template<class T> void f (T& t) {……}