我在C++中實現B樹,我有一個堆棧可以節省對。我的問題是,我怎麼把這個堆棧,因爲推只接受1參數。謝謝用2個參數堆棧STL
5
A
回答
3
#include <utility>
// ...
stack<pair<string,string> > s;
s.push(make_pair("roses", "red"));
6
使用標準庫提供的std :: pair。
您可以使用功能make_pair創建它們。
#include <iostream>
#include <stack>
#include <string>
using namespace std;
int main(int argc, char **argv)
{
int myInt = 1;
string myString("stringVal");
stack<pair<string, int> > myStack;
myStack.push(make_pair(myString, myInt));
return 1;
}
+0
謝謝。我不喜歡STL。這只是我需要它而已。謝謝大家。 – petercartagena 2010-05-27 17:42:09
3
#include <stack>
#include <utility>
#include <iostream>
using namespace std;
int main() {
stack <pair<int,int> > s;
s.push(make_pair(1, 2));
pair <int, int> p = s.top();
cout << p.first << " " << p.second << endl;
}
相關問題
- 1. 參考 - 參數 - 堆棧或堆
- 2. stl仿函數超過2個參數
- 3. 堆棧溢出(參數:0x00000001,0x00442FF8)
- 4. 使用2個隊列實現堆棧
- 5. STL堆棧:讀取訪問衝突
- 6. stl堆棧對象的大小限制
- 7. 字符堆棧,字符串堆棧,整數堆棧,整數數組堆棧等
- 8. 有兩個數據類型棧STL作爲參數
- 9. C++ STL內存管理:堆棧還是堆?
- 10. 堆棧導航生成2個標頭
- 11. 堆棧數組切片(rbind> 2維)
- 12. 將2d數組推到C++ STL堆棧上?
- 13. pthread_join損壞堆棧中的pthread_create參數
- 14. 展開PHP堆棧跟蹤參數
- 15. 打印堆棧跟蹤參數的值
- 16. 將參數添加到Whoops堆棧幀
- 17. Printf參數沒有壓入堆棧
- 18. 遍歷堆棧和檢索主參數
- 19. 獲取堆棧跟蹤參數的值?
- 20. 在堆棧上傳遞參數
- 21. 使用2堆棧的計算器
- 22. 使用2堆棧實現隊列
- 23. 第二調用STL我的代碼段錯誤::堆棧::推()
- 24. 使用STL堆棧作爲C++類的成員
- 25. 如何在STL堆棧中保存用戶定義的類型?
- 26. STL priority_queue參數
- 27. 堆棧函數僅堆棧最後一個光柵文件
- 28. 添加兩個大數使用堆棧
- 29. 堆棧在java中使用堆棧
- 30. 堆棧溢出調用堆棧#timememoryfunctionlocation 10.0000143728
你能澄清你的問題?現在看起來就是一個簡單的'stack.push(std :: make_pair(first,second));''stack'是一個'std :: stack>'是你所需要的。 –
Pieter
2010-05-27 16:42:39