C 實現乙個陣列類及其stack介面卡

2021-08-22 16:59:26 字數 1137 閱讀 2968

一、問題描述:

1、用c++實現乙個陣列類,型別和大小可設;提供越界檢查;支援整體賦值.......

2、為其提供棧介面適配功能,使其能作為std::stack的容器

二、問題分析:

三、實現

//2008-6-13

#ifndef __yarray_h__

#define __yarray_h__

#include namespace ylib

//為實現t2不為t的型別的一般賦值

template yarray& operator=(const yarray& rhs)

reference operator(size_t i)

const_reference operator(size_t i) const

size_t size() const

iterator begin()

const_iterator begin() const

iterator end()

const_iterator end() const

//以某個值填充整個陣列

void fillwith(const t& value)

// swap 型別必須相同void swap (yarray& rhs)

t* c_array()

const t* c_array() const

private:

void checkindex(int i) const

private:

t elems[n];

}; //為上面的陣列實現乙個std::stack適用的堆疊介面卡

//即為stack實現其所需的基本要素(函式、介面)

template class yarraystackadapter

bool empty() const

size_t size() const

t& back()

void push_back(const t& value)

void pop_back()

private:

size_t topindex;

yarraya;

};}#endif

c 自己實現乙個陣列類

define crt secure no warnings include using namespace std class animal animal const animal animal animal operator const animal animal private int a in...

c 實現的乙個陣列串

陣列串類arraystring原始碼 pragma once class arraystring 帶參建構函式 arraystring char s 獲取串的長度 intgetlength 返回字串的內容 char tostring 用char串賦值 void operator char s2 用a...

c 返回乙個陣列

bqg s complexity analysis 最近遇到乙個很不一般的事情,返回乙個陣列時,我們可以直接返回它的首位址,但是如果呼叫兩次以上,返回的數值就是有問題的了。呼叫兩次js 函式,分別用a b陣列存放返回的陣列值,但是接收到返回的數值居然和我返回前存放的數值不一樣。及改善 include...