(1)Array包含以下属性:
int nLength (数组当前存储的实际元素个数)
T *data (存放数据的数组)
(2)定义类的成员函数bool put(int x),将x加入到数组data中,如果数组已满了无法加入则返回false,否则返回true;
(3)定义类的成员函数bool set(int index, T value); 设置index位置元素的值,如果index合法(0<=index<nLength)则返回true否则返回false;
(4)bool get(int index, T& value); 获取某个元素的值,如果index合法(0<=index<nLength)则返回true否则返回false;
(5)重载元素提取运算符[ ],取data[]中某个位置元素的值;
**大体架构**
template <typename T, int N >
class Array{
T data[N];
int nLength; //实际存放的元素个数
public:
Array(){ nLength = 0; }
int getLength(); //取实际元素个数
bool put(T value); //将value加入data[]中
bool set(int index, T value); //设置某元素的值
bool get(int index, T& value); //获取某个元素的值,放入value中
T& operator[] (int index); //取某个位置元素的值,返回该值,可以与++或--联用
T operator[] (int index) const;
virtual ~Array(){ };
};
你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,超出我们目前的服务范围,暂时无法为您解答。
问答VIP目前服务范围为 :Python、Java、MySQL、Redis、MongoDB、HBase、Zookeeper、Kafka、Linux领域专业问题解答,为您提供解决问题的思路和指导。
不提供源码代写、项目文档代写、论文代写、安装包资源发送或安装使用指导等服务。
本次提问扣除的有问必答次数,会为您补发到账户,我们后续会持续优化,扩大我们的服务范围,为您带来更好地服务。