跳到主要内容

C++ 基本语法

面向对象

C++ 支持面向对象程序设计(Object Oriented Programming,简称 OOP),其中类和对象是核心概念。C++ 程序可以定义为对象的集合,这些对象通过调用彼此的方法进行交互。

下面,我们先了解一下什么是类、对象,方法、即时变量。

  • 对象:对象是类的实例,对象具有状态和行为。例如,一只狗的状态、颜色、名称、品种、行为(摇动、叫唤、吃)。
  • :类可以理解为描述对象行为、状态的模板或蓝图。
  • 方法:简单来说,一个方法表示一种行为。一个类可以包含多个方法,可以在方法中写入逻辑、操作数据以及执行所有的动作。
  • 即时变量:每个对象都有其独特的即时变量,对象的状态是由这些即时变量的值创建的。

程序结构

下面是一个简单的 Hello World 程序,也是一个完整的 C++ 程序代码。

/**
* File: hello.cpp
* Author: GetIoT (getiot.tech)
*/

#include <iostream>

using namespace std;

int main()
{
cout << "Hello, World!" << endl;
cout << "你好,世界!" << endl;
return 0;
}

程序剖析:

  • 开头 4 行由 /* */ 包裹的是注释,多行注释以 /* 开始, 以 */ 结束。
  • 第 6 行包含了头文件 <iostream>,C++ 语言定义了一些头文件,这些头文件包含了程序中必需的或有用的信息。
  • 第 8 行引入 std 命名空间。命名空间是指标识符的各种可见范围,C++ 标准程序库中的所有标识符都被定义于一个名为 std 的 namespace 中。
  • 第 10 行开始 int main() 包裹的是程序主体,main 函数也是程序开始执行的地方。
  • 第 12 行 cout 用于将数据输出到控制台,在终端打印一句“Hello, World!”。实际上,cout 就是位于命名空间 std 中的。
  • 第 13 行与 12 行类似,打印一句中文“你好,世界!”。
  • 第 14 行 return 0; 结束 main 函数,并向调用进程返回值 0。

基本语法

如果你熟悉 C 语言,就会发现 C++ 的程序结构和语法跟 C 语言非常相似。

标识符

  • C++ 标识符是用来标识变量、函数、类、模块,或任何其他用户自定义项目的名称。
  • 一个标识符以字母 A-Z 或 a-z 或下划线 _ 开始,后跟零个或多个字母、下划线和数字(0-9)。
  • C++ 标识符内不允许出现标点字符,比如 @&%
  • C++ 是区分大小写的编程语言(所以 GetIoT 和 getiot 是两个不同的标识符)。

结束符

在 C++ 中,分号是语句结束符。也就是说,每个语句必须以分号结束。它表明一个逻辑实体的结束。

例如,下面是三个独立的语句:

x = y;
y = y+1;
add(x, y);

如果把它们写在一行(不建议这么写),它们依然是三个独立的语句。

x = y; y = y+1; add(x, y);

语句块

语句块是一组使用大括号括起来的按逻辑连接的语句。例如:

{
cout << "Hello, World!" << endl;
cout << "你好,世界!" << endl;
return 0;
}

一个函数、一个循环、一个判断都是常见的语句块。

注释

注释就是程序的解释性语句,注释是写给人看的,用以提高源代码的可读性,编译器在预编译阶段会忽略所有注释的内容。

C++ 支持单行注释和多行注释两种形式:

  • // 一般用于单行注释。
  • /* ... */ 一般用于多行注释。

例如:

// 这是单行注释

/*
* 这是多行注释
* ...
*/