第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

用模板實現(xiàn)的問題

使用類模板的話,遍歷的輸出應(yīng)該怎么寫,因為輸出int和類的方法不一樣 請大神告知

正在回答

4 回答

不好意思,第85行的QueueEmpty()函數(shù)調(diào)用多了一對括號。

0 回復(fù) 有任何疑惑可以回復(fù)我~
void?MyQueue::QueueTraverse(){
????for(int?i=m_iHead;?i?<?m_iHead?+?m_iQueueLen;?i++){
????????m_pQueue[m_iHead].printInfo();
????}
}


//其中printInfo()是自定義類型實現(xiàn)的函數(shù),例如
void?Customer::printInfo(){
????cout?<<?”姓名:?"?<<?m_strName?<<?endl;
????cout?<<?"年齡:?"?<<?m_iAge?<<?endl;
????cout?<<?endl;
}

再貼上一個我實現(xiàn)的吧,直接復(fù)制下面的代碼可運行。

#include?<iostream>
#include?<string>

using?namespace?std;


class?Customer{
public:
	Customer(){
		//需要默認構(gòu)造函數(shù)
	}
	
	Customer(string?name,?int?age){
		m_strName?=?name;
		m_iAge?=?age;
	}

	void?printInfo()?const{
		cout?<<?"姓名:?"?<<?m_strName?<<?endl;
		cout?<<?"年齡:?"?<<?m_iAge?<<?endl;
		cout?<<?endl;
	}
	
private:
	string?m_strName;
	int?m_iAge;
};




template?<class?T>
class?MyQueue{
public:
	MyQueue(int?queueCapacity){
		m_iQueueCapacity?=?queueCapacity;
		m_iQueueLen?=?0;
		m_iHead?=?0;
		m_iTail?=?0;
		m_pQueue?=?new?T[queueCapacity];
	}
	
	~MyQueue(){
		delete[]?m_pQueue;
	}
	
	void?QueueClear(){
		m_iQueueLen?=?0;
		m_iHead?=?0;
		m_iTail?=?0;
	}
	
	bool?QueueEmpty()?const{
		if(m_iQueueLen==0){
			return?true;
		}
		else{
			return?false;
		}
	}
	
	bool?QueueFull()?const{
		if(m_iQueueLen==m_iQueueCapacity){
			return?true;
		}
		else{
			return?false;
		}
	}
	
	bool?EnQueue(T?element){
		if(QueueFull()){
			return?false;
		}
		else{
			m_pQueue[m_iTail]?=?element;
			m_iTail?++;
			m_iTail?=?m_iTail?%?m_iQueueCapacity;
			m_iQueueLen?++;
			return?true;
		}
	}
	
	bool?DeQueue(T?&element){
		if(QueueEmpty()()){
			return?false;
		}
		else{
			element?=?m_pQueue[m_iHead];
			m_iHead?++;
			m_iHead?=?m_iHead?%?m_iQueueCapacity;
			m_iQueueLen?--;
			return?true;
		}
	}
	
	void?QueueTraverse(){
		for(int?i?=?m_iHead;?i?<?m_iHead?+?m_iQueueLen;?i++){
			m_pQueue[i%m_iQueueCapacity].printInfo();
		}
	}
	
private:
	T*?m_pQueue;
	int?m_iHead;
	int?m_iTail;
	int?m_iQueueLen;
	int?m_iQueueCapacity;
};





int?main(int?argc,?char?*argv[])?{
	MyQueue<Customer>*?p?=?new?MyQueue<Customer>(4);
	p->EnQueue(Customer("imooc",?20));
	p->QueueTraverse();
}


0 回復(fù) 有任何疑惑可以回復(fù)我~

template <class T>

void MyQueue::QueueTraverse()

{

// 里面T即你需要的類型

}


0 回復(fù) 有任何疑惑可以回復(fù)我~

template <class T>

void MyQueue::QueueTraverse(){

?//some code

}

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消
數(shù)據(jù)結(jié)構(gòu)探險—隊列篇
  • 參與學(xué)習(xí)       110141    人
  • 解答問題       183    個

與現(xiàn)實最為貼近的數(shù)據(jù)結(jié)構(gòu)-隊列,帶大家進入數(shù)據(jù)結(jié)構(gòu)的美妙世界

進入課程

用模板實現(xiàn)的問題

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號