| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 654 人关注过本帖
标题:设计一个可变大小的数组类的问题,请大家帮忙
只看楼主 加入收藏
anyu723
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2007-10-19
收藏
 问题点数:0 回复次数:2 
设计一个可变大小的数组类的问题,请大家帮忙
我想问下这个怎么做

设计一个可变大小的数组类程序:
class array
{
      private:
              int size;    //数组大小
              int *element; //数组元素               
      public:
             array(int size = 100);
             int& elem (int); //返回第i+1个元素的引用
             ~array();           
};

使用这个类的程序是:
array a(10);
a.elem(2) = 5;
cout<<a.elem(2)<<endl;
考虑为该类定义合适的初始化和赋值语义
搜索更多相关主题的帖子: 可变 设计 
2008-06-14 18:13
sunkaidong
Rank: 4
来 自:南京师范大学
等 级:贵宾
威 望:12
帖 子:4496
专家分:141
注 册:2006-12-28
收藏
得分:0 
有个数组模板你去看看啊

学习需要安静。。海盗要重新来过。。
2008-06-14 19:17
anyu723
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2007-10-19
收藏
得分:0 
我编了一下,觉得还是有点问题

#include <iostream>
#include <string>

using namespace std;

class array
{
      private:
              int size;    //数组大小
              int *element; //数组元素                           
      public:            
             //array();
             array(int);
             int& elem (int); //返回第i+1个元素的引用
             ~array();
             void print();
             int Getint()
             {
                  return size;
             }
};

array::~array()
{
     delete element;
}

array::array(int sz = 100)
{
     size = sz;
     element = new int [size];
}

int& array::elem(int i)
{         
    return element[i];     
}

void array::print()
{
     cout<<size<<endl;
}

int main(int argc,char* argv[])
{   
    int i;
    array a(10);      
    for (i = 0;i<10;i++)
    {
         cin>>a.elem(i);
    }
    for (i = 0;i<10;i++)   
    {
         cout<<"The element "<<i+1<<" is "<<a.elem(i)<<endl;   
    }
    a.elem(2) = 23;
    cout<<"The element is "<<a.elem(2)<<endl;   
    system("pause");
    return 0;
}
2008-06-14 21:18
快速回复:设计一个可变大小的数组类的问题,请大家帮忙
数据加载中...
 
   



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

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