泛型编程
2015-08-31 18:55
134 查看
@讲师张文杰—Geekband
将型别以一种 to-be-specified-later 方式给出
通过模板以及相关性质表现的
…实际调试一遍
1.vector
2.list
3.deque
4.set and Multiset
5.Map and MultiMap
6.stack
7.Queue
能够存放任意型别的动态数组
一段地址连续的空间
动态的空间调整
向vector添加元素
push_back函数
向vector添加元素的方法,调用该函数,将元素加至其尾部
empty()函数
size()函数
访问vector中的元素
vector::at()
vector:operator[]
C++里尽量少用try-catch,开销大。
调试运行文件—test_fx
使用list,必须用include,并通过std命名空间去访问
创建List
std::list l; 创建一个T型别的空list
std::list l(n);创建一个容量是n的T型别的list
std::list l(n,x); 创建一个容量是n的T型别的list,初始化为x
std::list copyOfList(l); 创建一个已有list的拷贝
std::wstring array[] = {TEXT(“Str-1”),TEXT(“Str-2”),TEXT(“Str-3”)};
std::list l(array,array+3);
通过一个数组创建一个list
常见操作
l.remove_if(ContainsString(TEXT(“C++”)));
//remove string that contains “C++”
1.概观
将型别以一种 to-be-specified-later 方式给出
通过模板以及相关性质表现的
2.Traits
…实际调试一遍
3.迭代器
分离算法和容器4.容器
容器的种类1.vector
2.list
3.deque
4.set and Multiset
5.Map and MultiMap
6.stack
7.Queue
1.vector
能够存放任意型别的动态数组
一段地址连续的空间
动态的空间调整
向vector添加元素
//vector的声明 #include<vector> int main(){ std::vector v; }
push_back函数
向vector添加元素的方法,调用该函数,将元素加至其尾部
std::vector<std::wstring> v3; for(std::size_t i=0;i<10;i++) { std::wstringstream wss; wss<<TEXT("String[")<<i<<TEXT("]")); v3.push_back(wss.str()); }
empty()函数
size()函数
std::vector<std::wstring> v3; bool isEmpty = v3.empty(); int array[] = {1,2,3,4,5,6,7,8,9,10}; std::vector<int> v(array,array+10); std::size Vsize = v.size();
访问vector中的元素
vector::at()
vector:operator[]
std::vector<std::wstring> v; v.reserve(10); for(std::size_t i=0;i<3;i++){ std::wstringstream wss; wss<<TEXT("String[")<<i<<TEXT("]"); v.push_back(wss.str()); } try{ std::wstring wsz1 = v[5]; std::wstring wsz2 = v.at(5); } catch(const std::exception& e){ Console::WriteLine(ex.what()); }
C++里尽量少用try-catch,开销大。
2.Deque
3.List
调试运行文件—test_fx
使用list,必须用include,并通过std命名空间去访问
创建List
std::list l; 创建一个T型别的空list
std::list l(n);创建一个容量是n的T型别的list
std::list l(n,x); 创建一个容量是n的T型别的list,初始化为x
std::list copyOfList(l); 创建一个已有list的拷贝
std::wstring array[] = {TEXT(“Str-1”),TEXT(“Str-2”),TEXT(“Str-3”)};
std::list l(array,array+3);
通过一个数组创建一个list
常见操作
l.remove_if(ContainsString(TEXT(“C++”)));
//remove string that contains “C++”
相关文章推荐
- php电商系统iwebshop二次开发教程第一讲《iwebshop框架结构》
- Java 字符串比较
- 百度ocr开放api调用python代码
- C++ 映射共享文件到本地
- java相关问题回答
- 整合 spring 4(包括mvc、context、orm) + mybatis 3 示例
- 整合 spring 4(包括mvc、context、orm) + mybatis 3 示例
- path,classpath,java_home。
- php获取远程图片并把它保存到本地
- C++中map容器的使用说明
- c++ boost string split trim replace
- java基础I/O系列--FilterInputStream 和FilterOutputStream
- java桥接模式
- Java SHA-256 算法实例
- web工程引用其他java工程解决方法
- Python单元测试框架Pytest——如何生成测试报告
- 常见的PHP设计模式
- Java多线程之 Thread VS Runnable 【带案例】
- java并发:FutureTask 和 CountDowmLatch 的使用
- struts2,hibernate4,spring3配置时问题汇总及解决办法