- 博客(5)
- 资源 (1)
- 收藏
- 关注
翻译 Item 8 异常安全的ctor和dtor
根据下面的声明,写出实现的代码,要求达到异常安全或异常中立。这意味着即使发生了异常,Stack对象也要处于正确统一的状态。异常要被传递给调用者,让调用者根据上下文处理异常。template class Stack {public: Stack(); ~Stack(); /*...*/private: T* v_; // 栈的缓冲区 size
2011-06-12 14:16:00 1542
翻译 Item 6-7 重用标准库
下面的函数定义产生了三个临时对象,其实是可以省略掉的:string FindAddr( list emps, string name ){ for( list::iterator i = emps.begin(); i != emps.end(); i++ ) { if( *i == name ) { return i->addr;
2011-06-12 14:13:00 564
翻译 Item 4-5 通用容器的设计
给下面的容器添加几个拷贝构造函数和赋值函数:template class fixed_vector{public: typedef T* iterator; typedef const T* const_iterator; iterator begin() { return v_; } iterator end()
2011-06-09 14:28:00 491
翻译 Item 2-3 大小写不敏感的string
实现一个“大小写不敏感”的string类:ci_string s( "AbCdE" );assert( s == "abcde" ); // 1. 大小写不敏感assert( s == "ABCDE" ); // 1. 大小写不敏感assert( strcmp( s.c_str(), "AbCdE" ) == 0 ); // 2. 保留大小写状态assert( strcmp(
2011-06-09 14:25:00 1321
原创 Item 1 Iterators
class Date{public: Date(const char* date = "jxd"); Date(const Date& date); Date operator()(const char* date); Date& operator=(const Date& date); ~Date(); friend bool operator==(const D
2011-06-09 14:23:00 500
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人