自定義陣列類

2021-09-25 01:30:32 字數 2193 閱讀 7391

在學習c++的過程中,我們經常使用到陣列,那怎麼去定義乙個類去實現陣列的功能呢?

我們先列出一些經常對陣列進行的一些操作,

1、 建立乙個指定容量的陣列

2、 用已有的陣列初始化另乙個陣列

3、 用已有的陣列給另乙個陣列賦值

4、 給陣列新增元素/給陣列元素賦值

5、 獲取陣列指定元素的值

6、 輸入一定數量的值,將值賦給陣列

7、 輸出陣列

……還有很多,本次只實現以上功能

以下是**:

1、myarray.h 檔案 :myarray 類的宣告

#pragma once

#include

using

namespace std;

class

myarray

;

2、myarray.cpp 檔案 :myarray 類的實現
#include

"myarray.h"

// 建構函式

myarray::

myarray()

// 拷貝建構函式

myarray::

myarray

(const myarray&m)

for(

int i =

0; i <

this

->len; i++)}

//有參建構函式

myarray::

myarray

(int len)

else

}// 析構函式

myarray::

~myarray()

}// 設定值

void myarray::

setdata

(int index,

int data)

}// 獲取值

int myarray::

getdata

(int index)

;// 獲取長度

int myarray::

getlen()

const

;// 過載賦值運算子

myarray& myarray::

operator=(

const myarray&m)

// 如果陣列不為空,清空陣列當前內容if(

this

->space !=

null

)// 深拷貝

this

->len = m.len;

this

->space =

newint

[this

->len]

;for

(int i =

0; i <

this

->len; i++

)return

*this;}

// 過載

int& myarray::

operator

(int i)

const

// 過載 <<

ostream &

operator

<<

(ostream & os,

const myarray & ma)

return os;

}// 過載 >>

istream &

operator

>>

(istream & is, myarray & ma)

return is;

}

3、main 方法呼叫
#include

#include

"myarray.h"

using

namespace std;

void

main()

cout <<

"arr4 : "

<< arr4 << endl;

// 輸出陣列

// 獲取陣列指定元素的值

cout <<

"arr4 [4] = "

<< arr4[4]

<< endl;

}

4、執行結果

Java陣列 自定義基類

此類可以實現以下功能 新增資料 顯示資料 查詢資料返回索引 根據索引返回對應的陣列值 刪除資料 更新資料 順序新增資料以及陣列的二分查詢返回索引的功能。public class myarray public myarray int maxsize 新增資料 public void insert lo...

自定義陣列

陣列是一種容器,最簡單的資料結構,其實體地址是連續的,所以,其長度是固定的。陣列一旦定義 資料型別,長度均被固定,所以不能實現增加刪除的操作 一.簡單定義 建立乙個學生類,在測試檔案中定義乙個學生類的陣列用來存放學生資訊 public class student public void study ...

自定義陣列

通過學習自定義陣列,了解陣列的資料結構。package algorithm public class array 帶參的建構函式,建立陣列 param capacity 傳入的陣列容量 public array int capacity 獲取陣列容量 public int getcapacity 獲...