离线下载
PDF版 ePub版

极客学院团队出品 · 更新于 2018-11-28 11:00:43

基本语法

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>是必要的。
  • using namespace std; 这一行告诉编译器使用 std 命名空间。命名空间是 C++ 中一个相对较新的特性。
  • 下一行 //main() is where program execution begins 是一个在 C++ 可以用来表示注释的语句。单可以使用 // 进行单行注释。
  • int main() 这一行是程序的主方法,也是程序执行的入口。
  • 下一行 cout << "This is my first C++ program" 会将 ”This is my first C++ program” 显示在屏幕上。
  • 下一行 return 0; 会终止 main() 函数的执行,并将 0 返回给调用进程。

编译和执行 C++ 程序

接着让我们看看如何保存源文件,编译和执行程序。请按照如下的步骤执行:

  • 打开一个文本编辑器,添加上面的代码;
  • 保存该文件,并以 hello.cpp 为该文件名;
  • 打开一个命令行程序,接着切换目录为你保存 hello.cpp 这个文件的目录;
  • 在命令行中输入 g++ hello.cpp,接着按下回车按键,编译你的程序。如果你的代码中没有错误,在命令行控制窗口中提示符将会跳转到下一行,并将生成一个 a.out 的可执行文件。
  • 接着,输入 a.out 来运行你的程序;
  • 你将会在你当前的窗口中看到输出 Hello World。
$ g++ hello.cpp
$ ./a.out
Hello World

确保 g++ 在你的路径和你目录包含文件 hello.cpp 运行它。

你可以编译 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++是一种区分大小写的编程语言。因此,Manpowermanpower 在 C++ 中是两个不同的标识符。

如下是一些合法的标识符的例子:

mohd       zara    abc   move_name  a_123
myname50   _temp   j     a23b9      retVal

C++ 关键字

如下的列表展示了 C++ 中的关键字。这些关键字不能用作常量或变量或其他标识符的名称。

asm else new this
auto enum operator throw
bool explicit private true
break export protected try
case extern public typedef
catch false register typeid
char float reinterpret_cast typename
class for return union
const friend short unsigned
const_cast goto signed using
continue if sizeof virtual
default inline static void
delete int static_cast volatile
do long struct wchar_t
double mutable switch while
dynamic_cast namespace template  

三元符

有些字符有其他的表示含义,称为三元字符序列。三元字符是由三个字符组成,当表示一个字符序列并且该序列总是以两个问号开始。

三元符在任何地方出现时都会被转义,包括在字符串字面值和字符字面值,注释,和预处理器指令中。

以下是最常用的三元符序列:

Trigraph Replacement
??= #
??/ \
??' ^
??( [
??) ]
??! |
??< {
??> }
??- ~

所有的编译器不支持三元符,也不建议使用,因为它们很容易让人混淆。

C++ 中的空格

只包含空格,可能有注释的行被称为一个空行,并且 C++ 编译器会完全忽略它。

空格是 C++ 中使用的术语来描述空格、制表符、换行符和注释。空格将一部分注释与其他的部分分隔开,从而使编译器能够识别一个元素在语句中的位置,例如 int 的结束,和下一个元素的开始位置。因此,在下面的语句中,

    int age;

在 int 和 age 之间必须有至少一个空格字符(通常是一个空格),这样编译器才能够区分它们。另一方面,在如下语句中

    fruit = apples + oranges: //Get the total fruit

在 fruit 和 = 之间,或者 = 和 apples 之间是不需要空格的,尽管这样做不会有什么影响。如果为了使程序阅读起来更方便,你可以在它们之间添加空格。

上一篇: 开发环境 下一篇: 注释