| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 599 人关注过本帖
标题:设计并实现一个可由用户在生成对象时给定大小的整数向量类IntVect的问题
取消只看楼主 加入收藏
sunrenen
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-5-7
收藏
 问题点数:0 回复次数:0 
设计并实现一个可由用户在生成对象时给定大小的整数向量类IntVect的问题

设计并实现一个可由用户在生成对象时给定大小的整数向量类IntVect。
下面是一个使用IntVect类的程序示例及输出结果。

void main ( )
{
IntVect v1(4); // 生成一个含四个分量的向量,即v1=(0, 0, 0, 0)
v1[0] = 1;
v1[1] = 2;
v1[2] = 3;
v1[3] = 4; // 此时v1=(1, 2, 3, 4)
IntVect v2 = v1; // 此时v2=(1, 2, 3, 4)
IntVect v3 = v1 + v2; // 此时v3=(1, 2, 3, 4)
IntVect v4;
v4 = v1 - v2; // 此时v4=(0, 0, 0, 0)
cout << v3 << endl << v4 << endl;
}

上面程序的输出结果应该为:
(2, 4, 6, 8)
(0, 0, 0, 0)
这是我写的,,改了半天还是错误的,,那个高手发个正确的给我,,让我学习一下
#include "stdafx.h"

class IntVect
{ public:
Intvect(int );
IntVect & operator =(const InVect &);
IntVect & operator +(const InVect &);
private:
int v[4];

};
Invect::Intvect(int num)
{ intvect = new Intvect;
intvect.v[0]=intvect.v[1]=intvect.v[2]=intvect.v[3]=0;
}
IntVect & IntVect:: operator=(const IntVect & rhs)
{ intvect = new Intvect;
*v[0]=rhs.v[0];
*v[1]=rhs.v[1];
*v[2]=rhs.v[2];
*v[3]=rhs.v[3];
return intvect;
}
IntVect & IntVect:: operator+(const IntVect & rhs)
{ intvect = new Intvect;
*v[0]=rhs.v[0]+*v[0];
*v[1]=rhs.v[1]+*v[1];
*v[2]=rhs.v[2]+*v[2];
*v[2]=rhs.v[3]+*v[2];
return intvect;
}
void main ( )
{
IntVect v1(4); // 生成一个含四个分量的向量,即v1=(0, 0, 0, 0)
v1[0] = 1;
v1[1] = 2;
v1[2] = 3;
v1[3] = 4; // 此时v1=(1, 2, 3, 4)
IntVect v2 = v1; // 此时v2=(1, 2, 3, 4)
IntVect v3 = v1 + v2; // 此时v3=(1, 2, 3, 4)
IntVect v4;
v4 = v1 - v2; // 此时v4=(0, 0, 0, 0)
cout << v3 << endl << v4 << endl;
}

搜索更多相关主题的帖子: 对象 给定 IntVect 整数 向量 
2007-06-03 14:46
快速回复:设计并实现一个可由用户在生成对象时给定大小的整数向量类IntVect的问 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.023377 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved