标题:c++类与对象,编写一个类
只看楼主
C语言不挂
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2017-11-23
结帖率:50%
已结贴  问题点数:20 回复次数:1 
c++类与对象,编写一个类
编写一个类,能够实现对数组长度进行改变。包括数组的初始长度定义、数组长度增加、数组长度压缩。相应的测试主函数如:
void main(){
    A a;
    a.init(20);//数组初始长度为20,所有数据初始为0
    a.write(10,2);//将数据为0的元素按照首元素为10,增量为2的方式填写
    a.extent(10);//数组长度增加10,变成30.原有数据保留,新增元素初始为0
    a.write(20);//将数据为0的元素统一按照20的数据填写
    a.extent(-5);//将数组长度减少5,由30变成25.原有前25个数据不变
    a.destroy();//销毁整个数组
}
搜索更多相关主题的帖子: 数组 长度 初始 数据 元素 
2018-04-01 15:18
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
得分:20 
//活太多了,就写一个函数吧。未测试
class A
{
private:
    int*arr;
    int size;//长度
public:
    A(int length=10){arr=new int[length];size=length;}
    ~A(){delete arr;}
    extent(int difference);
}
A::extent(int difference)
{
    int*tmp=arr;
    int size_new=size+difference;
    arr=new int[size_new];
    int min=size_new<size?size_new:size;
    for(int i=0;i<min;i++)
    {
        arr[i]=tmp[i];
    }
    delete tmp;
}
2018-04-01 21:02



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-485708-1-1.html




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

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