Chapter 1 内容梳理

程序的编译与执行
编译环境
- IDE
- 命令行
程序的编译
g++ filename: 不指定生成的执行文件名,默认命名为 “a.out”g++ -o exename filename: 指定生成的执行文件名
程序的执行
filename
./exename: use relative path [相对路径].../exename: use absolute path [绝对路径]- 注:必须加路径,直接执行是无效的【这与Shell脚本不同】
标准输入与标准输出
例程导入
//从标准输入读取 v1,v1 ,从标准输出打印求和结果
#include<stdio.h>
#include<iostream>
int main(){
std::cout<<"Enter two operands"<<std::endl;
int v1=0,v2=0;
std::cin>>v1>>v2;
std::cout<<"the sum of "<<v1<<" and "<<v2<<" is "<<v1+v2<<std::endl;
return 0;
}
标准输入与输出对象
- 输入
cin:标准输入对象【内容进入缓存区】
- 输出
cout:标准输出对象【内容进入缓存区】cerr:一般用以输出程序错误与警告【内容不进入缓冲区】clog:一般用以输出执行时的相关信息【内容进入缓存区】
- 标准输入与输出对象都与控制台相关联
输入与输出符号详解
<<和>>本来表示左移和右移,但在iostream头文件中,被重载为函数
cout << "hello world"
cin >> v1
函数角度理解【用函数的副作用】
- 参数
- cout : ostream 对象
- “hello world” : 一个定值
- 输出
- ostream对象的引用, 等价于 ostream对象
- 这是
cout可以链式使用的原因
- 副作用 : 把定制赋给ostream对象,并输出到控制台【标准io】
运算符角度理解
- 左值 : ostream对象
- 右值 :一个定值
- 效果 :把定值赋给osteam对象,并把值输出到控制台
- 注:可以链式使用
定位符号(scope operator)
- 作用:解决同名冲突
std::cout表示cout是在std命名空间(namespace)里的函数- 命名空间可以在头文件之后指定
using namespace std;,这样在写cout时就不用加上std::
换行符号(endl)
- 表示换行
- 清空缓冲区【全部输入到ostream对象中】
如何输入EOF
- window : 换行——输入ctrl+z——换行
- unix:换行——输入ctrl+d——换行

类,类型,成员,对象,变量等概念间的关系
类型(type)与类(class)
- 类型(type):声明了一种数据结构,包括数据以及对数据的操作
- 固有类型(build-in type):语言本身支持的类型,如int,char
- 自定义类型:程序设计者自己定义的类型(OOP特有)
- 类(class):
- 在C++中,用户实现自定义类型的机制。支持用户自己指定数据成员以及操作,来实现自定义类型。
- 用类机制实现的自定义类型称为类类型(class type)
- 关系
成员
- 在固有类型中,定义了数据与对数据的操作
- 成员是类类型中,对数据和对数据的操作这两个概念的映射
- 数据——>成员
- 对数据的操作——>成员函数
对象与变量
同上,二者是同级概念,为映射关系
- 类型(type)的实例化称为变量【
int i表示 i 是 int 类型的变量】 - 类类型(class type)的实例化为对象【
Sale_Item it表示 it 是一个 Sale_Item对象】
关系图

Chapter 1 内容梳理的更多相关文章
- JavaScript内容梳理 示例之模态对话框 示例之全选和反选以及取消 示例之后台管理左侧菜单
<!DOCTYPE html> <!--示例之模态对话框--> <html lang="en"> <head> <meta c ...
- 老男孩最新Python全栈开发视频教程(92天全)重点内容梳理笔记 看完就是全栈开发工程师
为什么要写这个系列博客呢? 说来讽刺,91年生人的我,同龄人大多有一份事业,或者有一个家庭了.而我,念了次985大学,年少轻狂,在大学期间迷信创业,觉得大学里的许多课程如同吃翔一样学了几乎一辈子都用不 ...
- 巨蟒django之权限10,内容梳理&&权限组件应用
1.CRM项目内容梳理: 2.权限分配 3.权限组件的应用
- DOM内容梳理2
JavaScript-DOM2(内容整理) 这两天新的知识有点多有点杂一时半会没有整理过来,以后不出意外会一直更行. js节点类型(NODETYPE) 查看节点类型 nodetype属性,返回的结果会 ...
- JVM内容梳理
- python基础知识梳理-----7函数
基本内容梳理 1:函数定义,函数名,函数体以及函数的调用方式 2:函数的返回值 3:函数的参数 4:函数---动态传参数 5:名称空间,局部名称的加载顺序,全局名称空间,作用域,加载顺序 6:函数的嵌 ...
- 两万字长文总结,梳理 Java 入门进阶那些事
大家好,我是程序员小跃,一名在职场已经写了6年程序的老程序员,从一开始的菊厂 Android 开发到现在某游戏公司的Java后端架构,对Java还是相对了解的挺多. 大概是半年前吧,在知乎上有个知友私 ...
- Spring到底应该学哪些内容?
大家好,我是冰河~~ 说实话,「Spring注解系列」这个专题的内容是去年开始更新的,期间,基本上已经更新完IOC容器相关的内容了.在即将更新AOP相关的内容时,由于种种原因吧,也有很多小伙伴在微信上 ...
- 虾皮工作室QQ群列表
各位博友: 本群不仅仅是提供好的资料,更重要是提供平台,提供解决问题的方法和思路.求人不如求己,掌握合理的方法和方式才是不断进步的根本.看我的文档,不单单是看内容,更应该从整理的方式和角度是深思,去想 ...
- 到底怎么样才叫看书?——Tony Zhao's
到底怎么样才叫看书?——上篇 目录: 一.引入 二.经历了就能理解 三.读书要分级 四.只读经典 五.别吝惜你动笔的那点时间 一.引入 看到这个题目的时候你可能会感到有点好笑:“这还用问,看书就是把书 ...
随机推荐
- avdmanager 返回了非零退出代码: 1。
最近做了一次系统还原,很多功能都出现了异常 重装了 Visual Studio 之后创建安卓仿真器的时候遇到问题,说"avdmanager 返回了非零退出代码: 1." 解决思路 ...
- 存储过程中调用EXECUTE IMMEDIATE的“权限不足”
EXECUTE IMMEDIATE是Oracle中使用动态SQL的一种方法,可以直接执行,也可以在存储过程中调用.然而在存储过程中调用可能会遇到权限不足的问题,如在存储过程中执行重建索引语句: sql ...
- 【CMake系列】03-cmake 注释、常用指令 message、set、file、for_each、流程控制if
本文给出了 cmake 中的 一些常用的 指令,可以快速了解,为后面的内容深入 打点基础. 本专栏的详细实践代码全部放在 github 上,欢迎 star !!! 如有问题,欢迎留言.或加群[3927 ...
- Linux-mknod命令
mknod 创建块设备或者字符设备文件.此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.SUSE.openSUSE.Fedora. 用法: mknod [选项]... 名称 类型 ...
- 修改kubeadm证书过期时间及更新k8s集群证书
一.为什么要修改 kubeadm 证书时间 Kubernetes 官方提供了 kubeadm 工具安装 kubernetes 集群,使用这个工具安装集群非常便捷,使部署和升级 Kubernetes 变 ...
- 什么是电商API
是电子商务平台提供给开发者和商家的一种技术接口,它允许第三方应用程序访问和操作平台的数据和服务.电商API的使用可以极大地提高业务效率,促进创新,并且为商家提供更多的商业机会. 以下是电商API的 ...
- TrueType 和 OpenType 的关系
OpenType 和 TrueType 都是字体文件格式,它们用于在数字设备中存储和渲染文本.虽然这两种格式都广泛使用,但它们在设计和功能上有一些重要区别. TrueType 是由苹果公司和微软公司在 ...
- 使用 crontab 设置 Homebrew 自动更新
本人有强迫症,希望自己电脑上安装的软件永远是最新的.App Store 有自动更新功能,然而 Homebrew 则没有自动更新的选项.每次手动更新的话时间长了又感觉麻烦.后来发现可以使用 cronta ...
- ECharts实现雷达图详解
ECharts 是一款由百度开源的数据可视化工具,它提供了丰富的图表类型,如折线图.柱状图.饼图.散点图.雷达图.地图.K线图.热力图.仪表盘等,以及丰富的交互功能.ECharts 组件的核心功能实现 ...
- [Udemy] AWS Certified Data Analytics Specialty - 6.Security
S3 加密 SSE-S3 SSE-KMS SSE-C Client Side Encryption SSL/TLS S3 支持http/https 两种协议 KMS KMS最大能加密4KB的数据,再大 ...