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. double,long double及各变量数组内存开销

    IEEE754浮点数的表示方法.C语言里对float类型数据的表示范围为-3.4*10^38-+3.4*10^38.double为-1.7*10^-308~1.7*10^308,long double ...

  2. 【CodeM初赛B轮】F 期望DP

    [CodeM初赛B轮]F 题目大意:有n个景点,m条无向边,经过每条边的时间需要的时间是li,在第i个景点游览花费的时间是ti,游览完第i个景点可以获得的满意度是hi.你的总时间为k,起初你等概率的选 ...

  3. php扩展trie_filter: 利用词库, 过滤敏感词

    1. 先安装libiconv# wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz# tar -zxvf libiconv- ...

  4. R语言数据管理(五)

    一.数据的输入: 手动输入:edit( )函数 也可修改 mydata <- data.frame(age=numeric(0),gender=character(0),weight=numer ...

  5. ButterKnife 原理解析

    一.使用方法 1.添加依赖. implementation 'com.jakewharton:butterknife:8.8.1' annotationProcessor 'com.jakewhart ...

  6. Android SDK上手指南 2:用户界面设计

    http://mobile.51cto.com/ahot-419184.htm 内容简介 我们将为应用程序项目添加布局方案,在这方面XML与Eclipse ADT接口将成为工作中的得力助手——不过在后 ...

  7. python3 函数 二

    1.函数嵌套 1.1函数嵌套定义 :在一个函数的内部,又定义另外一个函数. def f1():     x=1     def f2():         print('from f2')     f ...

  8. JS饼状图表数据分布插件

    在线演示 本地下载

  9. Idea 添加完项目以后自动生成的web.xml报错 'org.springframework.web.servlet.DispatcherServlet' is not assignable to 'javax.servlet.Servlet

    解决方法:Project Structure - Modules - 你的项目  - Dependencies 添加Tomcat library

  10. EntityFramework 学习 一 Update Existing Entity using DBContext in Disconnected Scenario

    using System; using System.Collections.Generic; public partial class Student { public Student() { th ...