[计算机科学经

Fint cvoid int f c3 fint c templates

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: 素 } 你可以像面對「單㆒ template parameter」版本那樣㆞使用這個新版 stack。這時如果你只傳遞㆒ 個引數表示元素型別,stack 會使用預設的 vector 來管理其內部元素: C++ Templates - The Complete Guide 3 32 Class Templates(類別模板) template <typename T, typename CONT = std::vector<T> > class Stack { private: CONT elems; // 元素 ... }; 當你在程式㆗宣告㆒個 Stack object 時,也可以明確指定元素容器的型別: // basics/stack3test.cpp #include #include #include #include <iostream> <deque> <cstdlib> "stack3.hpp" int main() { try { // stack of ints Stack<int> intStack; // stack of doubles,其內部使用 std::deque<> 來管理元素 Stack<double,std::deque<double> > dblStack; //譯註:千萬不要宣告為 Stack<double, std::deque<int> >, 這是自己砸自己的腳,編譯器無法為你做些什麼。 // // 操控 int stack intStack.push(7); std::cout << intStack.top() << std::end...
View Full Document

{[ snackBarMessage ]}

Ask a homework question - tutors are online