泛型主要是提供类型的类型参数,也被称为类型化参数。在C++中使用用模板实现泛型的。
这两种语言之间泛型的区别。
第一,java中泛型只能接受引用类型的,而C++可以接受基本类型的。
第二,在C++模板中,编译器使用提供的参数类型来扩充模板。List<A>和List<B>生成的代码不同,实际上是两个类。而在java 中,编译器只是对参数类型进行擦出和替换,所以ArrayList<A> 和 ArrayList<B>的对象共享相同的类,并且只存放一个ArrayList 的类。
泛型主要是提供类型的类型参数,也被称为类型化参数。在C++中使用用模板实现泛型的。
这两种语言之间泛型的区别。
第一,java中泛型只能接受引用类型的,而C++可以接受基本类型的。
第二,在C++模板中,编译器使用提供的参数类型来扩充模板。List<A>和List<B>生成的代码不同,实际上是两个类。而在java 中,编译器只是对参数类型进行擦出和替换,所以ArrayList<A> 和 ArrayList<B>的对象共享相同的类,并且只存放一个ArrayList 的类。