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. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载
声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性