[英]How to use built-in data structures without typing them out?
我想用 C++ 編寫一個使用兩個隊列實現堆棧的程序。 我可以輸入整個隊列數據結構。 但是有什么方法可以聲明兩個隊列 q1 和 q2 並使用它們的內置函數,如 enqueue、dequeue 和 isQueueEmpty? 如果是這樣,我如何聲明它們以及如何知道它們的內置函數的名稱?
這取決於您使用的語言。如果您使用的是 C++,那么您可以為此使用模板功能。
隊列被實現為容器適配器,這些類使用特定容器類的封裝對象作為其底層容器,提供一組特定的成員函數來訪問其元素。 元素被推入特定容器的“后部”並從其“前部”彈出。
要使用此功能,您需要包含頭文件隊列
#include <queue>
然后你需要為此創建一個對象。
std::queue<int> process;
這里< >里面的 value 指定了隊列中元素的類型。 這里是int。 即隊列中的所有元素都是整數類型。 您可以將進程視為隊列類的對象,使用該對象和點運算符可以訪問隊列模板的每個成員函數。
它包含以下功能(列表不完整)
您可以從這里獲得更多詳細信息: http : //www.cplusplus.com/reference/queue/queue/
下面的鏈接包含一個示例程序,說明隊列模板的使用: http : //www.cplusplus.com/reference/queue/queue/push/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.