C++基本语法
当我们考虑一个C++程序,它可以被定义为通过调用对方的方法进行通信的对象的集合。现在,让我们简要地看看类,对象,方法和实例变量的意思。
-
对象 - 对象具有状态和行为。示例:狗有状态 - 颜色,名字,繁殖以及行为 - 摇摆,吠叫,吃东西。对象是类的一个实例。
-
类 - 类可以被定义为一个模板/蓝图描述的行为/表示其类型支持对象。
-
方法 - 方法是一个行为。一个类可以包含许多方法。它是在将逻辑写入方法中,数据被操纵和所有的动作被执行。
-
实例变量 - 每个对象都有其独特的一套实例变量。当对象的状态是由分配给这些实例变量的值来创建。
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<<“This is my first C++ program.” 将显示消息“This is my first C++ program”,以在屏幕上显示出来。
-
下一行返回0;终止main()函数,并使其值0返回给调用过程。
编译和执行C++程序:
让我们来看看如何保存文件,编译并运行该程序。请按照以下的步骤:
-
打开文本编辑器,并添加如上面的代码。
-
将文件保存为: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++是区分大小写的编程语言。因此,Manpower和manpower 在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 |
三元符:
几个大字有另一种表示,所谓的三字符序列。三元符是代表一个字符和序列总是开始于两个问号一个三字符序列。
它们出现在包括字符串文字和字符常量中,在注释中,并在预处理指令三字母序列扩展的任何地方。
下面是最经常使用的三元符序列:
三元符 | 替换 |
---|---|
??= | # |
??/ | |
??' | ^ |
??( | [ |
??) | ] |
??! | | |
??< | { |
??> | } |
??- | ~ |
所有的编译器不支持三字符并且它们不宜使用,因为它们的性质混淆。
C++空格符:
仅包含空格,可能与注释行,被称为一个空行,C++编译器完全忽略它。
空白符是C++用来描述空格,制表符,换行符和注释术语。空格分隔是另一个声明的一部分,使编译器能够找出在一份声明中的一个元素,如int,结束和下一个元素开始。因此,在以下语句声明:
int age;
int和age之间必须有至少一个空白字符(通常是一个空格)以便编译器能够区分它们。另一方面,在语句声明
fruit = apples + oranges; // Get the total fruit
fruit和=之间或=和apples不使用空格字符是必要的,虽然是自由的,如果想为便于阅读的目的,可以包括一些空格符。