C++程序被组织成类,而类由成员函数和成员变量组成。

本章学习:

  1)C++程序的组成部分。

  2)各部分如何协同工作。

  3)函数及其用途。

  4)基本输入输出操作。

C++程序划分为两个部分,以#大头的预处理器编译指令以及以int main()打头的程序主体。

std::cout << " " << std::endl;

要插入文件而不是控制台,可将插入运算符<<用于std::fstream(而不是std::cout)。

程序运行成功时返回0,并在出现错误时返回-1.

命名空间的概念:

标准(std)名称空间。

命名空间是给代码指定的名称,有助于降低命名冲突的风险。

在函数无需做任何决策,也无需返回成功/失败状态时,可将其返回类型声明为void,这个函数没有返回值。

使用std::cin和std::cout执行基本输入输出操作。

例如:cin >> inputName;

getline().

第3章,使用常量和变量。

目的:1)如何声明和定义变量和常量。

2)如何给变量赋值以及操纵这些值。

3)如何将变量的值显示到屏幕上。

4)如何使用关键字auto和constexpr。

临时存储器被称为随机存储器(RAM)。

使用列表初始化避免缩窄转换错误。

使用auto自动判断类型。在变量类型非常复杂的时候可以使用。

使用typedef替换变量类型。

定义常量后,就不能直接修改它的值。直接给常量赋值会导致编译错误。常量也占用内存空间,并使用名称标识为其预留的空间地址,但不能覆盖该空间内容。

1)字面常量。2)使用关键字const声明的常量。3)使用关键字constexpr声明的常量表达式。4)使用关键字enum声明的枚举常量。5)使用#define定义的常量。

既然可以使用常规变量代替常量,为何还要定义常量?

通过声明常量(尤其是使用关键字const时)可告诉编译器,其值时固定的,不允许修改。这样编译器将确保不给常量赋值,即便另一位程序员接手您的工作,不小心试图覆盖常量的值。可提高编程质量

为何应给变量赋初值?

如果不初始化,就无法知道变量包含的初始值,在这种情况下,初始值将是给变量预留的内存单元内容。

auto是根据变量的初始值推断其类型的,使用auto没有初始化,就无法通过编译!!!

21天学通C++(C++程序的组成部分)的更多相关文章

  1. 21天学通C++_Day1

    被阿里实习生的第一轮电话面试刷掉以后,幡然醒悟,发现以前学习的C++基础一点都不扎实.为了把基础打扎实,重新学习一遍:为了让自己不放弃,也顺便可以把当天学到的东西记录下来,开始了写博客. 学习书籍:& ...

  2. 21天学通 C++(第8版) 内涵目录

    21天学通 C++(第8版) 第1章 绪论 1 1.1 C++简史 1 1.1.1 与C语言的关系 1 1.1.2 C++的优点 1 1.1.3 C++标准的发展历程 2 1.1.4 哪些人使用C++ ...

  3. 21天学通PythonPDF高清完整版免费下载|百度云盘

    百度云盘:21天学通PythonPDF高清完整版免费下载 提取码:nqa9 豆瓣评分: 书籍封面: 内容简介  · · · · · · <21天学通Python>全面.系统.深入地讲解了P ...

  4. 21天学通Python PDF完整版

    有需要的点击这里自取 内容简介  · · · · · · <21天学通Python>全面.系统.深入地讲解了Python编程基础语法与高级应用.在讲解过程中,通过大量实际操作的实例将Pyt ...

  5. 21天学通Python课后实验题4.6

    21天学通Python课后实验题4.6 1. 编程实现用户输入一门课程的两门子课程成绩,第一门子课程60分以上,则显示“通过”,第一门子课程不及格,则显示“未通过”,第一门子课程及格,而第二门子课程不 ...

  6. 21天学通C++学习笔记(二):C++程序的组成部分

    1. 预处理器编译指令 预处理器是一个在编译前运行的工具. 预处理器编译指令是向预处理器发出的命令,总是以磅字符#大头. #include让预处理器获取指定文件并将它们放在编译指令所处的位置.#inc ...

  7. 21天学通C++_Day5

    昨天停更了一天,真是羞羞啊,不过还是干了很多有意义的事的! 首先,昨天下午的时候,去参加了学校的春招!第一次参加招聘会,怕自己答不上面试官的问题,很是紧张! 和同学约的一点,结果到了发现还没开始,只能 ...

  8. 21天学通C++学习笔记(九):类和对象

    1. 类和对象 现实中的人等事物往往具备一些特征并且可以做某些事情,要在程序中模拟这些事物,需要一个结构,将定义其属性(数据)以及其可用这些属性执行的操作(函数)整合在一起.这种结构就是类,而这种结构 ...

  9. 21天学通C++学习笔记(八):指针和引用

    1. 简述 C++最大的优点之一是,既可以用它来编写不依赖于机器(主要是内存)的高级应用程序,又可以用它来编写与硬件紧密协作的应用程序. 事实上C++让您能够在字节和比特级调整应用程序的性能,而要编写 ...

随机推荐

  1. springboot 之 根据传入参数进行多数据源动态切换

    背景:最近有一个需求是根据app传来的请求参数,根据行政部门编码请求不同地区的数据,之前写的多数据源都是固定某个方法调用指定的dao然后查询不同的数据库,但是这次是需要根据前端传入参数进行动态区分数据 ...

  2. 使用docker创建rabbitMQ容器

    1.拉去镜像 docker pull rabbitmq:3.7.7-management

  3. 在MFC下绘制直线,使用橡皮筋技术,可以使直线效果跟随鼠标移

    void CGraphic1View::OnMouseMove(UINT nFlags, CPoint point) {        if(MK_LBUTTON == nFlags)    {    ...

  4. 哈希传递攻击利用(Pass The Hash)

    最近又复习了一下内网的相关知识,把以前的整理了一下发出来做个记录. 0x01 哈希传递攻击概念 有一点内网渗透经验的都应该听说过哈希传递攻击,通过找到相应账户相关的密码散列值(LM Hash,NTLM ...

  5. Syntax error, insert "}" to complete MethodBody

    jsp中代码在Eclipse中打开正常,导入项目导入MyEclipse后显示如下异常: Syntax error, insert "}" to complete MethodBod ...

  6. Linux 安装Anaconda/Miniconda以后无法识别conda命令

    注意:遇到无法识别conda命令时,可以先用步骤3试一下重启环境变量后conda命令是否能够识别 1. 修改环境变量 $ vim ~/.bashrc 2. 在最后添加: $ export PATH=~ ...

  7. 聊聊Java

    聊聊Java 笔记源于 视频教程Bilibili:狂神说Java 关注公众号:狂神说 能干嘛? 热度 TIOBE 狂神计划 三高:高可用.高性能.高并发 全球几千万的程序员都会Java,真正精通的不到 ...

  8. 转载---最简单的JavaScript模板引擎

    转载自:http://www.cnblogs.com/dolphinX/p/3489269.html,http://blog.jobbole.com/56689/

  9. MySQL 索引结构 hash 有序数组

    MySQL 索引结构 hash 有序数组 除了最常见的树形索引结构,Hash索引也有它的独到之处.   Hash算法 Hash本身是一种函数,又被称为散列函数. 它的思路很简单:将key放在数组里,用 ...

  10. HDU 4352 XHXJ's LIS HDU 题解

    题目 #define xhxj (Xin Hang senior sister(学姐)) If you do not know xhxj, then carefully reading the ent ...