C++函数模板类模板
来源:互联网 发布:想在淘宝上开个网店 编辑:程序博客网 时间:2024/05/21 09:03
#include <iostream>#include <string>using namespace std;template <typename T>inline T const& Max (T const& a, T const& b) { return a < b ? b:a; } int main (){ int i = 39; int j = 20; cout << "Max(i, j): " << Max(i, j) << endl; double f1 = 13.5; double f2 = 20.7; cout << "Max(f1, f2): " << Max(f1, f2) << endl; string s1 = "Hello"; string s2 = "World"; cout << "Max(s1, s2): " << Max(s1, s2) << endl; return 0;}
类模板
#include <iostream>#include <vector>#include <cstdlib>#include <string>#include <stdexcept>using namespace std;template <class T>class Stack { private: vector<T> elems; // elements public: void push(T const&); // push element void pop(); // pop element T top() const; // return top element bool empty() const{ // return true if empty. return elems.empty(); } }; template <class T>void Stack<T>::push (T const& elem) { // append copy of passed element elems.push_back(elem); } template <class T>void Stack<T>::pop () { if (elems.empty()) { throw out_of_range("Stack<>::pop(): empty stack"); } // remove last element elems.pop_back(); } template <class T>T Stack<T>::top () const { if (elems.empty()) { throw out_of_range("Stack<>::top(): empty stack"); } // return copy of last element return elems.back(); } int main() { try { Stack<int> intStack; // stack of ints Stack<string> stringStack; // stack of strings // manipulate int stack intStack.push(7); cout << intStack.top() <<endl; // manipulate string stack stringStack.push("hello"); cout << stringStack.top() << std::endl; stringStack.pop(); stringStack.pop(); } catch (exception const& ex) { cerr << "Exception: " << ex.what() <<endl; return -1; } }
0 0
- C/C++:函数模板与类模板
- [C/C++]模板函数与模板类
- C++,template,类模板和函数模板
- C++:函数模板、类模板及其特化
- C++---函数模板与类模板
- c++---函数和类模板
- 函数模板、类模板
- 模板函数,模板类
- 类模板(函数模板)
- 函数模板 类模板
- 函数模板、类模板
- 【c/c++】函数模板和模板函数
- C/C++_log2000_函数模板与类模板笔记1
- C/C++_log2000_函数模板与类模板笔记2
- C/C++ 函数模板
- c++:函数模板
- 【C++】函数模板
- 【c++】函数模板
- 【软工】软件工程(一)——开发流程
- jQuery对象和Dom对象转换
- 调代码 调晕了 ---已解决
- 139. Word Break
- TCP/IP,Http,Socket,XMPP的区别
- C++函数模板类模板
- pip安装报错:is not a supported wheel on this platform
- POJ 1061 青蛙的约会(扩展欧几里得算法)
- Linux 技巧:让进程在后台可靠运行的几种方法&CentOS 7通过Firewall开放防火墙端口
- 对象作用域
- JAVA 字符串常量池,jvm指令解析
- android中多个VideoView切换会黑一下屏的一个方法
- Docker之Hello World
- 【POJ 1018】Communication System(dp|贪心)