| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1025 人关注过本帖
标题:一道实验题,太难了,做不出来,望高手解答
取消只看楼主 加入收藏
独行者123
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2008-5-1
收藏
 问题点数:0 回复次数:0 
一道实验题,太难了,做不出来,望高手解答
在VC++中建立一个Win32 Console Application工程。
实现一个 AbsCollection类,该类包含的成员有:储存元素的整型数组、标志最后一个元素位置的整型last及数组长度、用来对集合中元素进行枚举的一个成员函数,并从AbsCollection类派生出Set类。Set对象中的数组是包含零个或多个无序的非重复元素,f1.dat 、f2.dat 文件中存放初始数据元素,由Set对象构造函数打开文件读入到数组中,经过加工处理后的运算结果存入该对象的数组中,由Set 对象析构函数将数组中元素写入指定的磁盘文件中。已知AbsCollection类定义如下:
class AbsCollection{
protected:
    int *iPtr;        //指向数组的指针
    int last;        //数组最后一个元素的位置
    int Max_Size;    //数组长度
public:
    AbsCollection(){};
    AbsCollection(int size){
        Max_Size=size;
        iPtr=new int[Max_Size];
        last=-1;
    };
    ~AbsCollection(){}
    void OutSet(){
        if(last<0){
            cout<<"Empty set!"<<endl;
            return;
        }
        cout<<"The number of elements:"    <<last+1<<endl;
        for(int *ip=iPtr;ip<=iPtr+last;)
            cout<<*ip++<<”  “;
        cout<<endl;
    }
};
(1)定义Set类,编写Set类构造函数和析构函数,使它们完成打开文件读入元素到数组中和将数组中元素写入指定的f1.dat磁盘文件中;
(2)编写集合增加一个元素成员函数input(int x);(注:如果集合中已有相同的元素,则不再加入)
(3)编写删除一个元素成员函数erase(int x);
(4)编写判别元素是否属于集合的成员函数isInSet(int x);
(5)编写求两个集合交的函数成员intersection(Set &s);
(6)编写求两个集合差的成员函数;
(7)重载+运算符,用于求两个集合的并;
(8)编写集合排序的成员函数sort();(从大到小排序)
(9)重载<<运算符,用于在屏幕上输出集合元素。
搜索更多相关主题的帖子: 实验 解答 
2008-10-20 21:50
快速回复:一道实验题,太难了,做不出来,望高手解答
数据加载中...
 
   



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

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