博文

类设计者的核查表(2007-03-09 00:10:00)

摘要:摘自<<c++沉思录>> 1.你的类需要一个构造函数吗? 2.你的数据成员是私有的吗? 3.你的类需要一个无参的构造函数吗? 4.是不是每个构造函数初始化所有的数据成员? 5.类需要析构函数吗? 6.类需要一个虚析构函数吗? 7.你的类需要复制构造函数吗? 8.你的类需要一个赋值操作符吗? 9.你的赋值操作符能正确地将对象赋给对象本身吗? 10.你的类需要定义关系操作符吗? 11.删除数组时你记住了用delete[]吗? 12.记得在复制构造函数和赋值操作符的参数类型中加上const 了吗? 13.如果函数有引用参数,它们应该是const引用吗? 14.记得适当地声明成员函数为const的了吗?......

阅读全文(2722) | 评论:0

string流(2006-08-17 20:51:00)

摘要:  ostringstream类向一个string插入字符,istringstream类从一个string对象读取字符,而stringstream类可以用来支持读和写两种操作。为了使用string流,我们必须包含相关的头文件:  #include <sstream>  例如,  string read_file_into_string()  {     ifstream ifile( "alice_emma" );     ostringstream buf;     char ch;          while(buf && ifile.get( ch ))        buf.put( ch );     return buf.str();  }  成员函数str()返回与ostringstream类对象相关联的string对象。    istringstream由一个string对象构造而来,它可以读取该string对象。istringstream的一种用法是将数值字符串转换成算术值。      ---摘抄自《C++PRIME》.......

阅读全文(4935) | 评论:0

C++学习笔记·输入输出(4)(转)(2006-07-27 19:59:00)

摘要:四、格式化输入输出  C++语言中有两种方法可以控制格式化输入输出:流对象的成员函数和操纵器。  <1> 流对象的成员函数  下表中的格式化标志,可以通过成员函数setf()来设置,也可以用unsetf()来复位,如果需要设置多个标志,可以使用 | 运算符(使用标志时前边加上ios::)。───────┬───────────────────────┬────  格式化标志  │              描           述                 │ 默 认───────┼───────────────────────┼────  boolalpha   │ 以alpha格式进行布尔输入输出                  │  off  showbase    │ 显示8进制或16进制前缀                        │  off  showpoint   │ 显示10进制浮点数末尾的零                  &n......

阅读全文(5756) | 评论:0