4.#
点击查看考点
生命期
1#include <iostream>
2
3using namespace std;
4
5template <class T>
6class CL {
7 private:
8 T a[10];
9 int num;
10
11 public:
12 CL() {
13 num = 0;
14 }
15 void set(int i, T val) {
16 a[i] = val;
17 num++; //?
18 }
19 T Re(int i) {
20 return a[i];
21 }
22 void out() {
23 cout << '{';
24 for (int i = 0; i < num - 1; i++) {
25 cout << a[i] << ", ";
26 }
27 cout << a[num - 1] << '}' << endl;
28 }
29};
30
31int main() {
32 CL<int> a;
33 CL<double> b;
34 CL<char> c;
35 for (int i = 0; i < 5; i++) {
36 a.set(i, i), b.set(i, i * 1.1), c.set(i, i + 'A');
37 }
38 a.out();
39 b.out();
40 c.out();
41 cout << "int 2..... is: " << a.Re(2) << endl;
42 cout << "char 3..... is: " << c.Re(3) << endl;
43 /* 之后的部分忘记了 */
44}
点击查看答案
1{0, 1, 2, 3, 4}
2{0, 1.1, 2.2, 3.3, 4.4}
3{A, B, C, D, E}
4int 2..... is: 2
5char 3..... is: D