【第2章 开始学习C++】C++语句

文章目录

导语

C++ 程序是一组函数, 而每个函数又是一组语句。 C++ 有好几种语句,例如:声明语句创建变量, 赋值语句给该变量提供一个值。

声明语句和变量

计算机是一种精确的、 有条理的机器。 要将信息项存储在计算机中, 必须指出信息的存储位置和所需的内存空间。

在C++中,是使用声明语句来指出存储类型并提供位置标签。

例如:

这条语句提供了两项信息: 需要的内存以及该内存单元的名称。

  • 程序需要足够的存储空间来存储一个整数, 在 C++ 中用 int 表示整数。 编译器负责分配和标记内存的细节。
  • 程序将使用名称 carrots 来标识存储在该内存单元中的值。

在 C++ 中, 所有变量都必须声明。 声明通常指出了要存储的数据类型和程序对存储在这里的数据使用的名称。

赋值语句

赋值语句将值赋给存储单元。 例如, 下面的语句将整数25赋给变量 carrots 表示的内存单元:

符号=叫做赋值运算符。 C++(和C) 有一项不寻常的特性---可以连续使用赋值运算符。

例如:

赋值将从右向左进行。 首先, 88 被赋给 steinway; 然后, steinway 的值(现在是 88) 被赋给 baldwin; 然后 baldwin 的值88 被赋给 yamaha。

cout的新花样

首先, cout 将 carrots 替换为其当前值 25; 然后, 把值转换为合适的输出字符。cout很聪明, 知道 carrots 是一个需要转换的整数。

cout 的智能行为源自 C++ 的面向对象特性。 实际上, C++ 插入运算符(<<) 将根据其后的数据类型相应地调整其行为, 这是一个运算符重载的例子。

使用cin

信息从 cin 流向 carrots,C++ 将输出看作是流出程序的字符流一样, 它也将输入看作是流入程序的字符流。

输出时, << 运算符将字符串插入到输出流中; 输入时, cin 使用 >> 运算符从输入流中抽取字符。

cin 也是一个智能对象。 它可以将通过键盘输入的一系列字符(即输入) 转换为接收信息的变量能够接受的形式。

类简介

类是用户定义的一种数据类型。 知道类是用户定义的类型, 但作为用户, 并没有设计 ostream 和 istream 类。 就像函数可以来自函数库一样, 类也可以来自类库。 ostream 和 istream 类就属于这种情况。

要定义类, 需要描述它能够表示什么信息和可对数据执行哪些操作。 类之于对象就像类型之于变量。

类定义描述的是数据格式及其用法, 而对象则是根据数据格式规范创建的实体。

表示创建一个类型为 int 的变量(carrots)

cout,它是一个 ostream 类对象。 ostream 类定义(iostream 文件的另一个成员) 描述了 ostream 对象表示的数据以及可以对它执行的操作,如将数字或字符串插入到输出流中。 同样, cin 是一个 istream 类对象, 也是在 iostream 中定义的。

类描述指定了可对类对象执行的所有操作。 要对特定对象执行这些允许的操作, 需要给该对象发送一条消息。

C++提供了两种发送消息的方式:

  • 使用类方法(本质上就是稍后将介绍的函数调用)

  • 重新定义运算符

相关推荐
菜鸟~noob23312 分钟前
【电子战】 第09篇:阵列信号处理——波束形成、MVDR、MUSIC【含matlab代码】
开发语言·matlab·信号处理
ocean210322 分钟前
2025-2026年Python面试高频知识点洞察
开发语言·python·面试·python八股文
零依赖极客37 分钟前
Day 6·1 ARMv8.2 dotprod——vdotq_s32 一条指令做 4 个点积
c语言·开发语言·人工智能·矩阵·arm·vllm
stolentime43 分钟前
洛谷P10515 转圈题解
c++·算法·数学建模·贪心算法
和裕2 小时前
蜂窝板 vs 七层瓦楞重型纸箱:大件工业设备运输性能与成本全对比
大数据·运维·网络·人工智能·算法
衡石科技2 小时前
Data_Agent记忆机制与经验复用衡石分析智能体会话记忆与长期学习技术解析
人工智能·科技·学习·算法·企业级bi
新时代牛马2 小时前
cyclictest 毛刺从哪来?从ftrace、latencytop、perf到IRQ/调度延迟定位
android·开发语言·python·kotlin
三8442 小时前
Java 模板注入(FreeMarker) · 02 · 模板引擎与 FreeMarker 语法
java·开发语言·web安全·freemarker
IvanCodes3 小时前
Python 基础语法(七):推导式与常见遍历写法
开发语言·python
暮雨哀尘3 小时前
Java 基础练习(一):创建类并调用对象
java·开发语言