task5.

 1 #pragma once
 2 #include <bits/stdc++.h>
 3 using namespace std;
 4 class vectorInt {
 5 public:
 6     vectorInt(int n);
 7     vectorInt(int n,int value);
 8     vectorInt(const vectorInt& v0);
 9     ~vectorInt();
10     int &at(int n);
11     int get_size();
12     friend void output(vectorInt& v);
13 private:
14     int size;
15     int* p;
16 };
17 vectorInt::vectorInt(int n0) {
18     cout << "constructor 1 called.\n";
19     size = n0;
20     p = new int[n0];
21 }
22 vectorInt::vectorInt(int n0,int value) {
23     cout << "constructor 2 called.\n";
24     size = n0;
25     p = new int[n0];
26     for (int i = 0; i < n0; i++) 
27         p[i] = value;
28 }
29 vectorInt::vectorInt(const vectorInt& v0) {
30     cout << "copy constructor called.\n";
31     size = v0.size;
32     p = new int[size];
33     for (int i = 0; i < size; i++)
34         p[i] = v0.p[i];
35 }
36 vectorInt::~vectorInt() {
37     cout << "destructor called.\n";
38 }
39 int &vectorInt::at(int n) {
40     assert(n >= 0 && n < size);
41     return p[n];
42 }
43 int vectorInt::get_size() {
44     return size;
45 }
46 void output(vectorInt& v) {
47     for (int i = 0; i < v.size; i++)
48         cout << v.at(i) << " ";
49     cout << endl;
50 }

 

原文地址:http://www.cnblogs.com/zhouxv/p/16851890.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性