<C++ Primer **第一章** 心得笔记>

<C++ Primer 第一章 心得笔记>

编写一个简单的C++程序

  • 每个C++程序都有一个或多个函数,其中必须有一个main函数,操作系统通过调用main来运行c++程序。
  • 函数:由四部分组成,①返回类型、②函数名、③形参列表、④函数体
  • main函数的返回类型必须为Int。函数的函数体是以 “{” 开始 和 "}"结束的。
  • return语句的作用是向调用者返回一个值(这个值的类型是和声明的函数的返回类型为同一个类型。)
  • 大家可能会疑惑 为什么main函数的return语句是 "return 0;"而不是其他数字,因为返回的数值代表程序运行状态,0代表运行成功,而其他非0值则代表系统制定的状态。

编译、运行程序

  • 源文件:程序源码大都存储在一个或多个文件中,我们称之为源文件。

初识输入输出

  • iostream库:包含两个基础类型,istream类和ostream类,分别表示输入流和输出流

  • stream是流的意思,表达的是随着时间的推移,字符按顺序产生或小号。然后istream我就理解为,in加steam,in是进入的意思 也就是输入流。ostream我理解为out(出)加stream,也就是输出流的意思。

  • 标准输入: cin (读作 see-in),istream类对象,成为标准输入(int i , istream cin),int是一个类 istream也是一个类,cin就是这样定义出来的。

  • 标准输出:cout (读作see–out)(不读为 “靠特” ,我之前就是这样读的 2333),ostream类对象

  • cerr:ostream类对象,输出警告和错误信息。

  • clog:ostream类对象,用来输出程序运行时的一般信息。

  • 头文件:每个使用标准库设施的程序都必须包含相关的头文件。#include指令和头文件的名字必须在同一行中。

  • 表达式:通常由一个或多个运算对象和一个运算符组成

  • “ <<” :输出运算符,它接受两个运算对象,左侧的运算对象必须是ostream类对象,右侧的运算对象是要打印的值,运算符将要打印的值写入到左侧的运算对象中,返回结果是左侧的运算对象。

  • “>>”:输入运算符,接受两个运算对象,其左侧必须是istream类对象,右侧的对象接受左侧对象给定的值,返回左侧的istream类对象

  • 思考如下问题:
    在这里插入图片描述

  • 字符串字面值常量: 用一对双引号" " 包围的字符序列。 例如: " Hellow Word ! "

  • endl :这是一个被称为操作符的特殊值 cout<<endl;和cout<<"\n";的最大区别在于 前者会结束当前行,将程序产生的所有输出都真正写入到输出流中,而不是在内存中等待写入流。而后者cout<<"\n";,仅仅是换行。

  • 命名空间:可以帮助我们避免不经意的名字定义冲突,以及使用库中相同oiiiiiiiiiiiiiiiiiii名字导致的冲突。标准库定义的所有名字都在命名空间std中。

  • 作用域运算符(::):指出我们想要使用的定义在命名空间中的名字。

  • 关于使用命名空间和作用域运算符,我有如下几点看法,"using namespace std、using std::cout"类似的,就像定义变量一样( int i ),最好是在作用域里声明 而不是生命为全局,然后使用"using std::cout"比使用"using namespace std"好,坚持 在哪用就在哪声明 用什么声明什么 的原则

  • 初始化变量:就是在变量创建的同时为它赋予一个值。( int i = 5;)

  • 声明变量:创建一个变量 ( int i; )

注释简介

  • 注释:分为单行注释和界定符对注释。 单行注释以双斜线(//)开始 换行符结束。界定符对注释以 /* 开始 ,*/结束。在这之间的所有内容都不会被编译器编译。界定符对注释可以注释多行,每一行的开头最好以 * 开头。

  • 一个注释不能不能嵌套在另一个注释中,不然会产生奇奇怪怪的错误。例如在代码段中使用了一对界定符注释,然后又想使用一对界定符注释 注释掉这个代码段的时候,请先使用单行注释(//) 注释掉代码段内的一对界定符注释。

控制流

  • while语句:while语句之心的过程就是交替检测codition条件,和执行statement语句的过程。直至codition条件为假时,便不再执行statement语句。
while (condition)
   statement
  • 条件:所谓条件就是产生一个真或假的结果的表达式。

  • 语句块:就是用花括号包围的零条或多条语句的序列。语句块也是语句的一种。

  • 复合复制运算符(a += b;): 同义(a = a + b; ),它的本质与一个加法结合一个复制是相同的。

  • 前缀递增运算符:递增运算符将运算对象的值加1。 ++a 等价于 a = a+1

  • 前缀递减运算符:递减运算符将运算对象的值减1。 --a等价于 a= a-1

  • for语句:分为循环头和循环体两个部分。循环头控制循环体的执行次数,它由一个初始化语句、一个循环条件、以及一个表达式组成。

//for(初始化语句;循环条件;表达式) 
for(int a=0;a<=0;a++) {
	
	//这是循环体
	//初始化语句只执行一次,然后循环条件进行判断,为真则执行循环体,然后执行表达式
	//如果循环条件判断为假 则退出循环

}
  • 当我们使用istream对象作为条件时,其效果就是检测流的状态。
  • 文件结束符(end-of-file):当从键盘向程序输入数据时,使用文件结束符来指出文件的结束。win是ctrl+z 然后按enter建,unix(包括mac)中使用ctrl+d。
  • C++程序中的每个名字都应该先声明后使用。
  • 类简介
  • 在C++中我们通过定义一个类来定义自己的数据结构。一个类定义了一个类型,以及其关联的一组操作。类机制是C++最重要的特性之一。实际上C++最初的一个设计焦点就是能定义使用上像内置内型一样自然的类类型
  • 头文件:为了使用标准库设施,我们必须包含相关的文件。头文件根据其中定义的类的名字来命名。我们通常使用.h作为头文件的后缀。
  • 使用文件重定向:这种机制允许我们将标准输入和标准输出与命名文件关联起来。 addItems是程序名,infile是给程序输入数据的文件, outfile是程序输出数据的文件” $ addItems <.infile> outfile“。两个文件都应该位于同一目录下。
  • 成员函数:是定义为类一部分的函数,有时也被称为方法。我们通常以一个类对象的名义来调用成员函数。
  • 点运算符(.): 点运算符只能用于类类型对象。其左侧运算对象必须是一个类类型对象,右侧运算对象必须是该类型的一个成员名。运算结果为右侧预算对象制定的成员。
  • 调用运算符( () ):调用运算符是一对圆括号,里面放置实参列表(列表可能为空)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值