c++模板和java泛型之间有何不同
2015-09-07 16:10
351 查看
解法:
/**MyClass.h**/
template<class T> class MyClass{
public:
static int val;
MyClass(int v){ val = v; }
};
/**MyClass.cpp**/
template<typename T>
int MyClass<T>::bar;
template class MyClass < Foo > ;
template class MyClass < Bar > ;
/**main.cpp**/
MyClass<Foo>* foo1 = new MyClass<Foo>(10);
MyClass<Foo>* foo2 = new MyClass<Foo>(15);
MyClass<Bar>* bar1 = new MyClass<Bar>(20);
MyClass<Bar>* bar2 = new MyClass<Bar>(35);
int f1 = foo1->val;//等于15
int f2 = foo2->val; //等于15
int b1 = bar1->val;//等于35
int b2 = bar2->val;//等于35
相关文章推荐
- 字符串匹配的KMP算法
- C++递归实现格雷码
- C#与C/C++的交互
- c语言中printf("N多字怎么打的快");(vim编辑器)
- 浅谈C++的语句语法与强制数据类型转换
- C++中赋值运算符与逗号运算符的用法详解
- 内联函数与宏的简单说明
- C++类成员声明时候不能初始化
- C++中cin、cin.get()、cin.getline()、getline()
- 【转】c++中vector的用法
- c++ 中 `++i` 与 `i++` 在运算表达式中的优先级
- C++实现Windows下的Daemon,监控多个进程
- 【C++学习笔记】sizeof()的用法与字节对齐
- 关于C++ const 的全面总结
- iOS开发之c语言入门教程
- C语言字符串操作总结大全
- C++ 之 访问控制与访问控制的继承
- C/C++ 多线程入门
- windows下c++编写多线程
- 详解C++中命名空间的意义和用法