码迷,mamicode.com
首页 >  
搜索关键字:effective stl    ( 8046个结果
Poj 1151 Invitation Cards dijkstra 堆优化
很裸的最短路,不过节点数和边数都是1e6,直接dij肯定是不行了,稀疏图用heap优化一下就好o(╯□╰)o注意STL里面的优先队列是优先级大的(值大的)在前面的,一开始没注意WA了好几发,哎,太粗心了#include #include #include #include #include #inc...
分类:其他好文   时间:2014-07-22 22:54:33    阅读次数:212
参考C++STL标准库中对了的使用方法
http://www.cppblog.com/zhenglinbo/archive/2012/09/18/191170.html参考:http://www.cppblog.com/zhenglinbo/archive/2012/09/18/191170.html当然是使用c++中的STL 的queu...
分类:编程语言   时间:2014-07-19 19:34:33    阅读次数:220
Maven 常用命令及作用
mvn clean、mvn package、mvn clean install -e、mvn dependency:analyze、mvn denpendency:tree -Dincludes=*:junit -Dverbose、mvn help:effective-pom/mvn help:ef...
分类:其他好文   时间:2014-07-16 18:17:22    阅读次数:1393
stl_algo.h
// Algorithm implementation -*- C++ -*-// Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,// 2010, 2011// Free Software Foundation,...
分类:其他好文   时间:2014-07-16 16:56:01    阅读次数:375
Effective C++ Item 48 认识 template 元编程
经验:Template metaprogramming (TMP, 模板元编程)可将工作由运行期移往编译期,因而得以实现早期错误侦测和更高的执行效率 示例1: template void advance(IterT &iter, DistT d){ if(typeid(typename std::iterator_traits::iterator_catogory) == typeid(std::random_access_it...
分类:编程语言   时间:2014-07-16 13:20:54    阅读次数:313
Effective C++ Item 39 明智而审慎地使用 private 继承
经验:private 继承意味 is-implemented-in-terms of。它通常比 composition 的级别低。 但是当 derived class 需要访问 protected base class 的成员,或需要重新定义继承而来的 virtual 函数时,这么设计是合理的 经验:和 composition 不同, private 继承可以造成 empty base 最优化。这对致力于“对象尺寸最小化”的程序库开发者而言,可能很重要 示例1:虽是 Empty class,但却不仅要花...
分类:编程语言   时间:2014-07-15 22:41:05    阅读次数:284
Effective C++ Item 47 请使用 traits classes 表现类型信息
经验:Traits classes 使得"类型相关信息"在编译期可用。它们以 templates 和 "templates 特化"完成实现 示例: template class deque{ public: class iterator{ public: typedef random_access_iterator_tag iterator_category; }; }; //template template struct iterator_trai...
分类:编程语言   时间:2014-07-15 22:40:20    阅读次数:372
Effective C++ Item 35 考虑 virtual 函数以外的实现
1.virtual 函数版本 class GameCharacter{ public: virtual int healthValue() const; //返回人物的健康指数, derived classes 可重新定义它 }; 2.使用 non-virtual interface 手法,那是 Template Method 设计模式的一种特殊形式。 让客户通过 public non-virtual 成员函数间接调用 private virtual 函数 class GameCharacter{ pu...
分类:编程语言   时间:2014-07-15 22:36:18    阅读次数:364
Effective C++ Item 45 运用成员函数模板接收所有兼容类型
经验:请使用 member function templates(成员函数模板)生成"可接受所有兼容类型"的函数 示例:泛化 copy 构造函数 temmplate class SmartPtr{ public: template SmartPtr(const SmartPtr &other) //member template, 为了生成 copy 构造函数 : heldPtr(other.get()){...} T *get() const...
分类:编程语言   时间:2014-07-15 13:10:24    阅读次数:319
Effective C++ Item 44 将与参数无关的代码抽离 templates
经验:Templates 生成多个 classes 和多个函数,所以任何 template 代码都不该与某个造成膨胀的 template 参数产生相依关系 因非类型模板参数(non-type template parameters) 而造成的代码膨胀,往往可消除,做法是以函数参数或 class 成员变量替换 template 参数 示例: template //size_t 是非类型模板参数 class SquareMatrix{ public: //...
分类:编程语言   时间:2014-07-15 13:04:39    阅读次数:307
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!