Effective C++ 学习笔记2

来源:互联网 发布:网络业务代表招聘 编辑:程序博客网 时间:2024/05/17 09:40

条款2:尽量用<iostream>而不是<stdio.h>


注意:这里说的是<iostream>而不是<iostream.h>,两者区别:<iostream>处于std名空间之下,而<iostream.h>处在全局空间下,容易造成名字冲突。


1.scanf/printf 的缺陷

 1)scanf/printf很轻巧、高效,但是他们不是类型安全的,而且也没有扩展性;

 2)scanf/printf需要把变量和控制格式区分开来。

它们的弱项正是>>和<<的强项:

1)通过运算符函数重载可以处理自定义类型(可能要通过隐式转换);

2)传递读和写的对象时采用的语法形式相同。


2.一些说明:

1)只有在某些特殊的情况下,iostream的效率比C stream的效率低(参见Item 23);

2)iostream有更强的可移植性;

3)iostream库的类有构造函数,stdio则没有。



0 0
原创粉丝点击