1. Vector 的存储结构设定为动态的块存储模式编写前在网上看到有人提到 C+自带的模板函数 vector,其储存数据的模式是先申请一块足够大的连续的内存空间,当此空间用尽时,程序会另开辟一块与之前相同大小的连续的内存空间。虽然具体怎么做,我没有去查,不过我按照自己的想法编了一下。首先申请了一个类 Block,含有 3 个 public 变量:TemplateClass BlockPublic:Block *last;/用于连接前一个段T *now;/连接数组Block *next;/用于连接下一个段;本来是想写一个结构体的,但是后来发现结构体无法用于定义模板,于是放弃了。总觉得一个类没有方法就算不上类,也许见少了吧。然后定义另一个类 Vector,含有 4 个私有变量:Block data;/第一个段Block *currentBlock;/和 top 构成组合式栈顶指针int top;int amount;/元素个数用图像解释:具体的操作,源代码上基本都有注释。2. 测试函数采用一个简单的界面运行程序后就可以看到,对于用户错误的输入,程序都有提示,很基本。不过只做了 int 型的 Vector,而且没写 swap 的测试部分。感觉应该不会有问题,因为只用把 int 改成其他类型就行了。