C++ 基本语法
当我们考虑 C++ 程序时,它可以定义为通过调用彼此的方法进行通信的对象的集合。现在让我们简单地了解一下类、对象、方法和即时变量的含义。
对象- 对象具有状态和Behave。示例:狗有状态 - 颜色、名称、品种以及Behave - 摇摆、吠叫、进食。对象是类的实例。
类- 类可以定义为模板/蓝图,描述其类型的对象支持的Behave/状态。
方法- 方法基本上是一种Behave。一个类可以包含许多方法。在方法中编写逻辑、操作数据并执行所有操作。
实例变量- 每个对象都有其唯一的实例变量集。对象的状态是由分配给这些实例变量的值创建的。
C++程序结构
让我们看一个简单的代码,它将打印Hello World一词。
#include <iostream> using namespace std; // main() is where program execution begins. int main() { cout << "Hello World"; // prints Hello World return 0; }
让我们看看上面程序的各个部分 -
C++ 语言定义了多个标头,其中包含对程序必需或有用的信息。对于这个程序,需要头<iostream> 。
使用命名空间 std 的行;告诉编译器使用 std 命名空间。命名空间是 C++ 中相对较新的补充。
下一行' // main() 是程序执行开始的地方。' 是 C++ 中可用的单行注释。单行注释以 // 开始,到行尾停止。
int main()行是程序开始执行的主函数。
下一行cout << "Hello World"; 导致屏幕上显示消息“Hello World”。
下一行返回0;终止 main() 函数并使其返回值 0 给调用进程。
编译并执行C++程序
我们来看看如何保存文件、编译和运行程序。请按照以下步骤操作 -
打开文本编辑器并添加上面的代码。
将文件另存为:hello.cpp
打开命令提示符并转到保存文件的目录。
输入“g++ hello.cpp”并按 Enter 编译代码。如果代码中没有错误,命令提示符将带您进入下一行并生成 .out 可执行文件。
现在,输入“a.out”来运行您的程序。
您将能够看到窗口上印有“Hello World”。
$ g++ hello.cpp $ ./a.out Hello World
确保 g++ 在您的路径中,并且您正在包含文件 hello.cpp 的目录中运行它。
您可以使用 makefile 编译 C/C++ 程序。有关更多详细信息,您可以查看我们的“Makefile 教程”。
C++ 中的分号和块
在 C++ 中,分号是语句终止符。也就是说,每个单独的语句必须以分号结束。它表示一个逻辑实体的结束。
例如,以下是三个不同的陈述 -
x = y; y = y + 1; add(x, y);
块是一组逻辑连接的语句,由左大括号和右大括号包围。例如 -
{ cout << "Hello World"; // prints Hello World return 0; }
C++ 不将行尾识别为终止符。因此,将语句放在一行中的哪个位置并不重要。例如 -
x = y; y = y + 1; add(x, y);
是相同的
x = y; y = y + 1; add(x, y);
C++ 标识符
C++ 标识符是用于标识变量、函数、类、模块或任何其他用户定义项的名称。标识符以字母 A 到 Z 或 a 到 z 或下划线 (_) 开头,后跟零个或多个字母、下划线和数字(0 到 9)。
C++ 不允许在标识符中使用标点符号,例如 @、$ 和 %。C++ 是一种区分大小写的编程语言。因此,Manpower和manpower在 C++ 中是两个不同的标识符。
以下是可接受的标识符的一些示例 -
mohd zara abc move_name a_123 myname50 _temp j a23b9 retVal
C++ 关键字
下面的列表显示了 C++ 中的保留字。这些保留字不得用作常量、变量或任何其他标识符名称。
汇编 | 别的 | 新的 | 这 |
汽车 | 枚举 | 操作员 | 扔 |
布尔值 | 明确的 | 私人的 | 真的 |
休息 | 出口 | 受保护的 | 尝试 |
案件 | 外部的 | 民众 | 类型定义 |
抓住 | 错误的 | 登记 | 类型ID |
字符 | 漂浮 | 重新解释_cast | 类型名 |
班级 | 为了 | 返回 | 联盟 |
常量 | 朋友 | 短的 | 未签名 |
常量类型转换 | 去 | 签 | 使用 |
继续 | 如果 | 大小 | 虚拟的 |
默认 | 排队 | 静止的 | 空白 |
删除 | 整数 | 静态类型转换 | 易挥发的 |
做 | 长的 | 结构体 | wchar_t |
双倍的 | 可变的 | 转变 | 尽管 |
动态转换 | 名称空间 | 模板 |
三字母组
一些字符有另一种表示形式,称为三字母序列。三字符组是表示单个字符的三字符序列,并且该序列始终以两个问号开头。
三字母组会在出现的任何地方展开,包括在字符串文字和字符文字中、在注释中以及在预处理器指令中。
以下是最常用的三字母序列 -
三字图 | 替代品 |
---|---|
??= | # |
??/ | \ |
??' | ^ |
??( | [ |
??) | ] |
??! | | |
??< | { |
??> | } |
??- | 〜 |
所有编译器都不支持三字母组,并且由于其令人困惑的性质,不建议使用它们。
C++ 中的空白
仅包含空格(可能带有注释)的行称为空行,C++ 编译器完全忽略它。
空白是 C++ 中用来描述空白、制表符、换行符和注释的术语。空格将语句的一部分与另一部分分隔开,并使编译器能够识别语句中一个元素(例如 int)的结束位置和下一个元素的开始位置。
声明1
int age;
在上面的语句中,int和age之间必须至少有一个空白字符(通常是一个空格),以便编译器能够区分它们。
声明2
fruit = apples + oranges; // Get the total fruit
在上面的语句 2 中,水果和 = 之间或 = 和苹果之间不需要空格字符,但如果您希望出于可读性目的,可以自由地包含一些空格字符。