例子 整数和字符串,其它都一样。
List<Integer>a=new LinkedList<Integer>() for(int i=0i<50i++)a.add(i)Integer[] b=new Integer[a.size()] b=a.toArray(b)System.out.println(Arrays.toString(b))List<String>c=new LinkedList<String>() StringBuilder sb=null for(int i=0i<50i++){sb=new StringBuilder() for(int j=0j<10j++) sb.append((char)((Math.random()*26)+65)) c.add(sb.toString()) } String[] d=new String[c.size()] d=c.toArray(d) System.out.println(Arrays.toString(d))
你好,你的问题仅仅是很简单的没有命名空间前缀,"std::", 简单将你列出的第2行,改成“std::list<int>Backpack”就行了。头文件里定义的标识符是“std::list”,而不是“list”,后者不是模板类的定义,所以不能和尖括号连用,报第一个错C2143。同时当假定list是一个变量后,发现前面没类型定义,就报告了第2个错C4430。 我的编译器vs2013不会报告你的第3个错。
在cpp文件里,你可以在所有#include之后,加入一行“using namespace std”,来避免重复输入"std::"前缀; 如果你全cpp只用<list>,也可以只输入“using std::list”
没有对内容进行复制。C#是微软公司发布的一种由C和C++衍生出来的面向对象的编程语言、运行于NETFramework和NETCore之上的高级程序设计语言。c#泛型list添加数据不对是由于List并没有对内容进行复制,它只是复制了元素的地址,只是保存了地址,对地址里面的内容是没有进行保护的。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)