1. 每个C++都包含至少一个函数,其中一个必须为main函数,且 main 函数的返回类型必须为 int。

2. 函数定义包括:返回类型,函数名,形参列表,函数体

3. main 函数返回值用来指示状态,0表示成功,其他值含义由系统定义,通常用来表示错误类型。

4. 通过 echo 命令可以获得 main 函数返回值。UNIX: echo $?   Windows : echo %ERRORLEVEL%. -Wall和/W4是打开警告选项,能对有问题的程序结构发出警告

编译器 系统环境 编译 运行 获取返回值
VS Windows c1 /EHsc /W4 prog1.cc prog1 echo %ERRORLEVEL%
GNU Unix g++ -std=c++11 -Wall prog1.cc ./a.out echo $?

5. 标准库有四个IO对象,cin,cout,cerr(警告错误、不缓冲),clog(一般性信息、缓冲). 默认cin和cerr会刷新cout缓冲区。程序异常终止时不会刷新cout缓冲区。读写缓冲区的动作与程序中的动作是无关的。

6. #include指令和头文件名称必须在同一行,且指令必须在所有函数外。

7. << 和 >> 运算结果皆为左侧运算对象。

8. 写入endl效果是结束当前行,并将与设备关联的缓冲区中的内容刷新到设备中。程序员应该一直保持刷新流,否则程序崩溃时输出可能还留在缓冲区中。

9. 命名空间可以避免不经意的名字定义冲突,以及使用库中相同名字导致的冲突。标准库定义所有名字都在命名空间std中,即调用标准库需显式说明作用域std::。通过使用作用域运算符 :: 来指出指定命名空间中的名字。

10.注释有两种:单行注释和界定符对注释。注释界定符内可以包含除*/之外的任意内容。注释界定符不能嵌套。

11. 当遇到文件结束符或遇到一个无效输入时,istream对象的状态会变为无效,即假。Windows:Ctrl+Z,然后按Enter或Return键;Unix:Ctrl+D

12. 文件重定向:prog1<infile>outfile prog1为exe格式文件,

13. 成员函数是定义为类的一部分的函数,有时也被称为方法。

14. 点运算符只能用于类类型的对象。

【C++ Primer 5th】Chapter 1的更多相关文章

  1. 【C++ Primer 5th】Chapter 15

    摘要: 1. 面向对象程序设计的核心思想是数据抽象.继承和动态绑定.数据抽象将类的接口和实现分离:继承定义相似的类型并对齐相似关系建模:动态绑定,在一定程度上忽略相似类型的区别,而以统一的方式使用它们 ...

  2. 【C++ Primer | 15】C++虚函数表剖析①

    概述 为了实现C++的多态,C++使用了一种动态绑定的技术.这个技术的核心是虚函数表(下文简称虚表).本文介绍虚函数表是如何实现动态绑定的. C++多态实现的原理: •  当类中声明虚函数时,编译器会 ...

  3. 【c++ primer, 5e】设计Sales_data类 & 定义改进的Sales_data类

    [设计Sales_data类] 1.考虑Sales_data类应该有那些接口. isbn.combine.add.read.print... 2.考虑如何使用这些接口. Sales_data tota ...

  4. 【c++ primer, 5e】函数重载

    [函数重载] Java中的重载一般是指重载构造器,或是子类覆写父类的方法:C++中的重载稍微复杂一些. 定义重载函数 典型的数据库应用. Record lookup(const Account& ...

  5. 【c++ primer, 5e】返回类型和return语句

    [无返回值函数] 1.在c++的void函数中,可以显式地使用return;语句来提前结束函数的调用. [有返回值函数] 1.值是如何被返回的:返回一个值的方式和初始化一个变量或者形参的方式完全一样. ...

  6. 【c++ primer, 5e】参数传递

    p187~p199: [传值参数] [传引用参数] 使用引用形参返回额外信息:传入一个(或者多个)额外的引用实参,令其保存字符出现的次数. 6.11 #include <iostream> ...

  7. 【c++ primer, 5e】类的其他特性(卒)

    1 - Class Members Revisited 2 - Functions That Return *this 3 - Class Types 4 - Friendship Revisited ...

  8. 【C++ Primer | 10】再探迭代器

    插入迭代器 1. 测试代码: #include<iostream> #include<vector> #include<list> #include<iter ...

  9. 【C++ Primer | 10】泛型算法

    #include<iostream> #include<algorithm> #include<vector> #include<string> #in ...

随机推荐

  1. List和Set排序的实现

    List.Set.Map的区别 List和Set继承了Collection接口. List以特定索引来存取元素,可以有重复元素.Set不能存放重复元素(用对象的equals()方法来区分元素是否重复) ...

  2. org.apache.poi3.1.7 Excle并发批量导入导出

    org.apache.poi3.1.7 升级,需要修改设置方式: 1.org.apache.poi3.1.4 的设置单元格: XSSFCellStyle cellStyle = wb.createCe ...

  3. Nginx教程

    Nginx教程 1.背景 介绍 Nginx是一个高性能的HTTP服务器,以及反向代理服务器 组成 Ngnix有内核和模块组成.微结构的内核根据配置文件将一个请求映射到一个location块中,该loc ...

  4. 16.Django提交表单

    Django表单提交一共有三种方式: 1.不使用Django组件进行提交 2.使用django.forms.Form(所有表单类的父类)进行提交 3.使用django.forms.ModelForm( ...

  5. linux c编程:线程退出

    在线程创建的时候pthread_exit都是调用的固定参数,我们先来看下如果用自动变量作为pthread_exit的参数时出现的问题 typedef struct foo{ int a; int b; ...

  6. 只需两步删除 node_modules

    peng@PENG-PC /E/_My_File_____/home/learn/web_qianduan/mithril-demo/demo2/mithril -demo $ npm install ...

  7. oracle游标用法

    -- 声明游标:CURSOR cursor_name IS select_statement  --For 循环游标 --(1)定义游标 --(2)定义游标变量 --(3)使用for循环来使用这个游标 ...

  8. 【leetcode刷题笔记】Rotate List

    Given a list, rotate the list to the right by k places, where k is non-negative. For example:Given 1 ...

  9. mysql表数据压缩

    记得一次面试中,面试官问我是否知道表的压缩,这个时候我才知道mysql有个表压缩这么个功能,今天试用下看看表的压缩率怎么样. 这里分两个部分说明,第一部分:官方文档说明:第二部分:具体实例测试. [第 ...

  10. P2455 [SDOI2006]线性方程组

    P2455 [SDOI2006]线性方程组 真\(\cdot\)高斯消元模板题 由于各种hack数据被造出来~码量突增~,其实也就多了二三十行 将每行系数消到最多有一个非0数 特殊情况: 在过程同时 ...