21天学通C++(C++程序的组成部分)
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++程序的组成部分)的更多相关文章
- 21天学通C++_Day1
被阿里实习生的第一轮电话面试刷掉以后,幡然醒悟,发现以前学习的C++基础一点都不扎实.为了把基础打扎实,重新学习一遍:为了让自己不放弃,也顺便可以把当天学到的东西记录下来,开始了写博客. 学习书籍:& ...
- 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++ ...
- 21天学通PythonPDF高清完整版免费下载|百度云盘
百度云盘:21天学通PythonPDF高清完整版免费下载 提取码:nqa9 豆瓣评分: 书籍封面: 内容简介 · · · · · · <21天学通Python>全面.系统.深入地讲解了P ...
- 21天学通Python PDF完整版
有需要的点击这里自取 内容简介 · · · · · · <21天学通Python>全面.系统.深入地讲解了Python编程基础语法与高级应用.在讲解过程中,通过大量实际操作的实例将Pyt ...
- 21天学通Python课后实验题4.6
21天学通Python课后实验题4.6 1. 编程实现用户输入一门课程的两门子课程成绩,第一门子课程60分以上,则显示“通过”,第一门子课程不及格,则显示“未通过”,第一门子课程及格,而第二门子课程不 ...
- 21天学通C++学习笔记(二):C++程序的组成部分
1. 预处理器编译指令 预处理器是一个在编译前运行的工具. 预处理器编译指令是向预处理器发出的命令,总是以磅字符#大头. #include让预处理器获取指定文件并将它们放在编译指令所处的位置.#inc ...
- 21天学通C++_Day5
昨天停更了一天,真是羞羞啊,不过还是干了很多有意义的事的! 首先,昨天下午的时候,去参加了学校的春招!第一次参加招聘会,怕自己答不上面试官的问题,很是紧张! 和同学约的一点,结果到了发现还没开始,只能 ...
- 21天学通C++学习笔记(九):类和对象
1. 类和对象 现实中的人等事物往往具备一些特征并且可以做某些事情,要在程序中模拟这些事物,需要一个结构,将定义其属性(数据)以及其可用这些属性执行的操作(函数)整合在一起.这种结构就是类,而这种结构 ...
- 21天学通C++学习笔记(八):指针和引用
1. 简述 C++最大的优点之一是,既可以用它来编写不依赖于机器(主要是内存)的高级应用程序,又可以用它来编写与硬件紧密协作的应用程序. 事实上C++让您能够在字节和比特级调整应用程序的性能,而要编写 ...
随机推荐
- vue+iview多条联动,for循环data是函数
问题:多条for循环出的数据二级联动for循环出多条数据,每条数据都有一个二级联动,每次下拉一级联动,二级的选项都是变化的. 思考刚开始一直想不出如何实现二级联动下拉的数据动态变化,因为之前一直都是v ...
- 小白—职场之Java基础篇
java基础篇 java基础 目录 1.java是一种什么语言,jdk,jre,jvm三者的区别 2.java 1.5之后的三大版本 3.java跨平台及其原理 4.java 语言的特点 5.什么是字 ...
- 6.30集训模拟赛4(炸裂的一天qwq)
T1浇水: 题目描述 在一条长n米,宽m米米的长方形草地上放置着k个喷水装置.假设长方形草地的坐标范围为[ 0 , 0 ] ~ [ n , m ],那么第 i 个喷水装置的位置为(ai,m/2),也就 ...
- Illustrate Java Access Levels
https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html 官网教程,清晰明了. (完)
- 第三方登陆---GITEE
第三方登陆QQ通行入口 https://www.cnblogs.com/Yangbuyi/p/13194007.html 呼~~~~ 应身边的同学要集成第三方登陆 gitee.github.qq登陆. ...
- 硬刚 lodash 源码之路,compact & concat
前置 本篇随笔包含 _.compact 和 _.concat 及其依赖的工具函数. 你可能需要一些 JavaScript 基础知识才能看懂一些没有注释的细节. compact _.compact(ar ...
- Mybatis 报错
Mybatis 报错 builder.BuilderException: Error parsing SQL Mapper Configuration Caused by: org.apache.ib ...
- HotSpot二分模型(1)
HotSpot采用了OOP-Klass模型来描述Java类和对象.OOP(Ordinary Object Pointer)指的是普通对象指针,而Klass用来描述对象的具体类型. 那么为何要设计这样一 ...
- 每日一题 - 剑指 Offer 39. 数组中出现次数超过一半的数字
题目信息 时间: 2019-06-29 题目链接:Leetcode tag: 数组 哈希表 难易程度:简单 题目描述: 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字. 假设数组是非空的 ...
- css制作简单loading动画效果【css3 loading加载动画】
曾经以为,loading的制作需要一些比较高深的web动画技术,后来发现大多数loading都可以用“障眼法”做出来.比如一个旋转的圆圈,并不都是将gif图放进去,有些就是画个静止图像,然后让它旋转就 ...