条款 2:尽量用<iostream>而不用<stdio.h>
 scanf 和 printf 很轻巧,很高效,你也早就知道怎么用它们,这我承 认。但尽管他们很有用,事实上 scanf 和 printf 及其系列还可以做些改进。尤其 是,他们不是类型安全的,而且没有扩展性。因为类型安全和扩展性是 C++的 基石,所以你也要服从这一点。另外,scanf/printf 系列函数把要读写的变量和 控制读写格式的信息分开来,就象古老的 FORTRAN 那样。是该向五十年代说 诀别的时候了!

如果编译器同时支持 <iostream>和 <iostream.h>,那头文件名的使用会很微妙。例如,如果使用了#include <iostream>, 得到的是置于名字空间 std(见条款 28)下的 iostream 库的元素; 如果使用#include <iostream.h>,得到的是置于全局空间的同样的元素。在全 局空间获取元素会导致名字冲突,而设计名字空间的初衷正是用来避免这种名 字冲突的发生。还有,打字时<iostream>比<iostream.h>少两个字,这也是很 多人用它的原因。:)

effective C++学习二(仅供个人学习记录,本文摘录effective C++)的更多相关文章

  1. 学习SpringBoot,整合全网各种优秀资源,SpringBoot基础,中间件,优质项目,博客资源等,仅供个人学习SpringBoot使用

    学习SpringBoot,整合全网各种优秀资源,SpringBoot基础,中间件,优质项目,博客资源等,仅供个人学习SpringBoot使用 一.SpringBoot系列教程 二.SpringBoot ...

  2. 烂笔头@WP 的博文仅供自己学习的备忘录

    前记:本博主的博文仅供自己学习的备忘录. 说明:很久未用博客,登录密码已忘记,费劲找回来,特写本博文申明.因为,今天邮件收到一条博文的评论,有谩骂本博主之意,甚觉委屈.所以,写以下文字说明“1.我的博 ...

  3. effective C++学习三(仅供个人学习记录,本文摘录effective C++)

    条款 3:尽量用 new 和 delete 而不用 malloc 和 free  把 new和 delete 与malloc 和 free 混在一起用也是个坏想法.对一个用 new 获取来的指针调用 ...

  4. effective C++学习一(仅供个人学习记录,本文摘录effective C++)

    条款 1:尽量用 const 和 inline 而不用#define   #define ASPECT_RATIO 1.653 编译器会永远也看不到 ASPECT_RATIO 这个符号名,因为在源码进 ...

  5. Asp.net MVC4 +EF6开发的个人网站源码和介绍(仅供新手学习)

    本项目是我去年利用业余时间开发的,采用的是asp.net mvc 4 +EF6+三层架构,适合新手进行学习,高手就没有什么价值了,可以直接跳过. 源码和数据库下载(已上传到git):https://g ...

  6. vue将网页中的特定部分转成pdf并下载(仅供个人学习记录)

    先安装支持 将页面html转换成图片npm install --save html2canvas 将图片生成pdfnpm install jspdf --save 组件引用: import html2 ...

  7. html页面的CSS、DIV命名规则(仅供参考学习)

    CSS命名规则: 头:header 内容:content/containe 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wrapper 左右中: ...

  8. visio2013 激活工具,仅供交流学习

    visio2013激活软件 环境是 win7, 64 bit 装了 visio 2013 , 可以却不能用它来画图,在网上找了一些破解工具,大都不能解决问题.网上不靠谱的广告型文章太多了 所幸,终于找 ...

  9. MVC中的自定义标签分页控件,仅供大家学习!!

    public static HtmlString ShowPageNavigate(this HtmlHelper htmlHelper, int currentPage, int pageSize, ...

随机推荐

  1. 图像_pytesseract

    所需模块 ①安装PIL:pip install Pillow(之前的博客中有写过) ②安装pytesser3:pip install pytesser3 ③安装pytesseract:pip inst ...

  2. mocha、should、supertest释义

    解释参考地址: https://itbilu.com/nodejs/npm/VyrFOe51-.html Mocha模块 Mocha是一个简单.可扩展的用于Node.js和JavaScript的单元测 ...

  3. SUI-mobile起步

    减少不必要造轮子的过程,于是在APP项目中推进SUI Mobile的使用,主要目的是使用它的一些基本样式,以及各种封装好的组件,但并没有创建单页应用. 刚刚开始使用,使用之中遇到一个槽点,记录一下(主 ...

  4. springboot中JPA的应用

    1.JPA JPA(Java Persistence API)是Sun官方提出的Java持久化规范.它为Java开发人员提供了一种对象/关联映射工具来管理Java应用中的关系数据.他的出现主要是为了简 ...

  5. android 实现一个简单纯文本的ListView

    思维线路: 1.创建一个ListViewActivity,LinearLayout布局里写了一个ListView布局 2.创建一个TextView布局给ArrayAdapter适配器使用 3.将Tex ...

  6. 调整navigationItem的位置

    UIBarButtonItem *itemTransformView = [[UIBarButtonItem alloc] initWithCustomView:_header.transformVi ...

  7. jl1.如何设置元素的宽高包含元素的边框和内边距

    方法一: 文档地址:http://www.w3school.com.cn/cssref/pr_box-sizing.asp CSS3 box-sizing属性:    box-sizing: bord ...

  8. 33.纯 CSS 创作牛奶文字变换效果

    原文地址:https://segmentfault.com/a/1190000015037234 感想:transform: translateY(50% & -50%);  animatio ...

  9. Kubernetes的ConfigMap说明

    这篇博文,我们来说一说,关于在kubernetes的pod中自定义配置的问题. 我们知道,在几乎所有的应用开发中,都会涉及到配置文件的变更,比如说在web的程序中,需要连接数据库,缓存甚至是队列等等. ...

  10. Oracle 表复杂查询之多表合并查询

    转自:https://www.cnblogs.com/GreenLeaves/p/6635887.html 本文使用到的是oracle数据库scott方案所带的表,scott是oracle数据库自带的 ...