C 順序棧實現

2021-10-02 03:00:30 字數 1177 閱讀 1750

模板類檔案位置:宣告和定義均要在標頭檔案中進行,否則會出現鏈結錯誤,不可只在標頭檔案宣告,在cpp檔案中定義

環境vs2019

模板類中的友元函式宣告:在類內宣告友元函式時,需要在上面加上 模板頭 template,否則會報錯,具體原因**

建構函式中使用return;不影響結果,貌似是這樣,在我這個例子

sequentialstack.h

#pragma once

#ifndef sequentialstack_h

#define sequentialstack_h

#include#includeusing std::cout;

using std::cin;

using std::endl;

using std::ostream;

templateclass seqstack

;templateseqstack::seqstack(int numsize)

top = -1;//保證top與陣列元素同時移動

}templateseqstack::~seqstack()

//進棧

templatevoid seqstack::push(const t& elem)

//出棧

templatevoid seqstack::pop(t& elem)

//檢視棧是否為空

templatebool seqstack::empty()

//返回棧中元素的個數

templateint seqstack::getsize()

//清空棧中的元素

templatevoid seqstack::clearstack()

templateostream& operator<< (ostream& os, seqstack& s)

//列印棧中的元素

templatevoid seqstack::print()

#endif // !sequentialstack_h

main.cpp

#include"sequentialstack.h"

int main()

cout << endl;

}

C 實現順序棧

vs2013下實現 include include using namespace std const int stacksize 20 templateclass stack 建構函式,初始化乙個空棧 stack t a,int n 含參建構函式 stack const stack otherst...

C 實現順序棧

版本一 int型別,只有建構函式和析構函式 class sstack sstack void push int x p size x int pop return p size inttop return p size 1 bool empty intsize private int p int s...

順序棧之C 實現

順序棧就是用順序表 陣列 實現的棧。其組織形式如下圖所示 下面介紹下我用c 實現的順序棧,在vc6下除錯通過。不足之處還請指正。1 檔案組織 2 ss.h棧類的宣告及巨集的定義 ifndef ss h define ss h typedef int datatype define maxsize 1...