我的向量类
来源:互联网 发布:软件测试技术 编辑:程序博客网 时间:2024/05/18 21:06
问题及代码:
/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:李盈盈 * 完成日期:2015年 05 月 10 日 * 版 本 号:v1.0 * * 问题描述:定义一个向量类MyVector。 * 输入描述:输入两个向量。 * 程序输出:按要求输入 */ #include <iostream> using namespace std; class MyVector { public: MyVector(int m); MyVector(const MyVector &v); ~MyVector(); friend istream &operator>>(istream &input,const MyVector &d); friend ostream &operator<<(ostream &output,const MyVector &d); friend MyVector operator+(const MyVector &d1,const MyVector &d2); friend MyVector operator-(const MyVector &d1,const MyVector &d2); bool operator==(const MyVector &d); private: int *Array; int num; }; MyVector::MyVector(int m) { num=m; Array=new int[num]; for(int i=0;i<num;i++) Array[i]=0; } MyVector::MyVector(const MyVector &v) { num=v.num; Array=new int[num]; for(int i=0;i<num;i++) { Array[i]=v.Array[i]; } } MyVector::~MyVector() { delete []Array; } istream &operator>>(istream &input,const MyVector &d) { cout<<d.num<<"个向量"; for(int i=0;i<d.num;i++) { input>>d.Array[i]; } return input; }ostream &operator<<(ostream &output, const MyVector &d){ output<<"("; for(int i=0; i<d.num-1; i++) output<<d.Array[i]<<","; output<<d.Array[d.num-1]; output<<")"; return output;}MyVector operator+(const MyVector &d1,const MyVector &d2){ MyVector d3(d1.num); d3.Array=new int[d1.num]; for(int i=0;i<d1.num;i++) { d3.Array[i]=d1.Array[i]+d2.Array[i]; } return d3;}MyVector operator-(const MyVector &d1,const MyVector &d2){ MyVector d3(d1.num); d3.Array=new int[d1.num]; for(int i=0;i<d1.num;i++) { d3.Array[i]=d1.Array[i]-d2.Array[i]; } return d3;}bool MyVector::operator==(const MyVector &d){ if(num!=d.num) return false; bool eq=true; for(int i=0;i<num;i++) { if(Array[i]!=d.Array[i]) { eq=false; break; } if(!eq) break; } return eq;} int main() { MyVector d1(5),d2(5); cout<<"输入d1——"; cin>>d1; cout<<"输入d2——"; cin>>d2; cout<<"d1="<<d1<<endl; cout<<"d2="<<d2<<endl; cout<<"d1+d2="<<d1+d2<<endl; cout<<"d1-d2="<<d1-d2<<endl; cout<<"d1"<<((d1==d2)?"==":"!=")<<"d2"<<endl; return 0; }
运行结果:
0 0
- 我的向量类
- 我的向量类
- 我的向量类
- 2-9-4 我的向量类
- 我写的向量
- 2015.5.19我的向量
- 第九周项目四:我的向量类
- 第九周项目四 我的向量类
- 第8周-项目4-我的向量类
- 第九周项目4-我的向量类
- 第九周项目四我的向量类
- 第九周项目四--我的向量类
- 第九周项目四 我的向量类(MyVector)
- 第10周项目4-我的向量类
- 第九周 项目4 我的向量类
- 第九周 【项目4-我的向量类】
- 第九周项目4 我的向量类
- 第九周项目4--我的向量类
- PHP常用符号和函数
- 信息安全类智能硬件的生态1—红海中的蓝海
- JavaScript图片裁剪的无变形实现方法
- 数据结构与算法——顺序栈
- 部分安全厂商误报分析提交方法
- 我的向量类
- 小黄鸭调试法
- 提高篇第2-5课第三题
- noj1131谣言传播
- 选择排序—堆排序(Heap Sort)
- Hadoop命令行运行KMeans(含源代码)
- java response 乱码 解决办法
- JS面向对象学习笔记(二)
- Centos更换yum源