C++系列内容的学习目录 → \rightarrow →C++学习系列内容汇总。
1. C++概述
关于C++的一些介绍:
- C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。
- C++是一种中级语言,综合了高级语言和低级语言的特点。
- C++是由 Bjarne Stroustrup 于 1979 年在贝尔实验室开始设计开发的。
- C++进一步扩充和完善了 C 语言,是一种面向对象的程序设计语言。
- C++ 可运行于多种平台上,如 Windows、MAC 操作系统以及 UNIX 的各种版本。
- C++是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的编程语言,支持过程化编程、面向对象编程和泛型编程。
- C++完全支持面向对象的程序设计,包括面向对象开发的四大特性:封装、抽象、继承、多态。
1.1 标准库
标准的C++由三个重要部分组成:
- 核心语言,提供了所有构件块,包括变量、数据类型和常量,等等。
- C++标准库,提供了大量的函数,用于操作文件、字符串等。
- 标准模板库(STL),提供了大量的方法,用于操作数据结构等。
1.2 ANSI 标准
ANSI 标准是为了确保C++的便携性,即我们所编写的代码在 Mac、UNIX、Windows、Alpha 计算机上都能通过编译。
由于 ANSI 标准已稳定使用了很长的时间,所有主要的 C++ 编译器的制造商都支持 ANSI 标准。
2. C++基本语法
C++程序可以定义为对象的集合,这些对象通过调用彼此的方法进行交互。下面简要地看一下什么是类、对象,方法、即时变量。
- 对象:对象具有状态和行为。例如:一只狗的状态有颜色、名称、品种,行为 有摇动、叫唤、吃。对象是类的实例。
- 类: 类可以定义为描述对象行为/状态的模板/蓝图。
- 方法:从基本上说,一个方法表示一种行为。一个类可以包含多个方法。可以在方法中写入逻辑、操作数据以及执行所有的动作。
- 即时变量:每个对象都有其独特的即时变量。对象的状态是由这些即时变量的值创建的。
3. 第一个C++程序
编写一个C++程序总共分为4个步骤:
- 创建项目
- 创建文件
- 编写代码
- 运行程序
3.1 创建项目
- step1:打开Visual Studio软件,点击
创建新项目
;
- step2:选择
Visual C++
,然后选择空项目
,接着修改项目名称
,点击浏览
修改项目位置
,最后点击确定
,项目创建完成。
3.2 创建文件
- step1:右击
源文件
文件夹,点击添加
,然后点击新建项
;
- step2:选择
Visual C++
,然后选择C++文件(.cpp)
,接着修改文件名称
,最后点击添加
,文件创建完成。
3.3 编写代码
编写如下代码:
#include <iostream>
using namespace std;
int main()
{
cout << "Hello World" << endl;
system("pause");
return 0;
}
接下来解释一下上面这段代码:
1. C++ 语言定义了一些头文件,这些头文件包含了程序中必需的或有用的信息。上面这段程序中,包含了头文件 <iostream>
。
2. 下一行代码 using namespace std;
告诉编译器使用std命名空间。命名空间是 C++ 中一个相对新的概念。
3. 下一行 int main()
是主函数,程序从这里开始执行。
4. 下一行 cout << "Hello World" << endl;
会在屏幕上显示 “Hello World”。
5. 下一行 system("pause");
语句执行系统环境中的pause命令,冻结屏幕,在程序的窗口上显示 “请按任意键继续…”,用户按任意键结束。
6. 下一行 return 0;
终止main( )函数,并向调用进程返回值 0。
3.4 运行程序
代码编写完成后,点击本地Windows调试器
运行程序。
代码运行结果如下所示。
4. 注释
程序的注释是解释性语句,可以在 C++ 代码中添加注释,这将会提高源代码的可读性。注释中的所有字符会被 C++ 编译器忽略。
注释的作用:在代码中加一些说明和解释,方便自己或其他程序员程序员阅读代码。
注释的两种格式:
- 单行注释:
// 描述信息
通常放在一行代码的上方,或者一条语句的末尾,对该行代码说明。 - 多行注释:
/* 描述信息 */
通常放在一段代码的上方,对该段代码做整体说明。
对上面编写的代码加上单行注释和多行注释如下。
#include <iostream>
using namespace std;
/*
main是一个程序的入口
每个程序有且仅有一个这个函数
*/
int main()
{
cout << "Hello World" << endl; //在屏幕上输出Hello World
system("pause");
return 0;
}
Hello World
5. 变量和常量
5.1 变量
变量的作用:给一段指定的内存空间起名,方便操作这段内存。
变量存在的意义:方便我们管理内存空间。
变量其实只不过是程序可操作的存储区的名称。C++ 中每个变量都有指定的类型,类型决定了变量存储的大小和布局,该范围内的值都可以存储在内存中,运算符可应用于变量上。C++在创建变量时,必须给变量一个初始值,否则会报错。
变量的名称可以由字母、数字和下划线字符组成。它必须以字母或下划线开头。
变量定义就是告诉编译器在何处创建变量的存储,以及如何创建变量的存储。变量定义指定一个数据类型,并包含了该类型的一个或多个变量的列表。
变量的语法:数据类型 变量名 = 初始值;
,例如int a = 10;
。
实例如下所示。
#include <iostream>
using namespace std;
int main()
{
//变量的语法:数据类型 变量名 = 变量初始值;
int a =10;
cout << "a = " << a << endl;
system("pause");
return 0;
}
a = 10
5.2 常量
常量是固定值,在程序执行期间不会改变,这些固定的值又叫做字面量。常量可以是任何的基本数据类型,可分为整型数字、浮点数字、字符、字符串和布尔值。常量就像是常规的变量,只不过常量的值在定义后不能进行修改。
常量的作用:用于记录程序中不可更改的数据。
C++定义常量的两种方式:
-
#define 宏常量:
#define 常量名 常量值
通常在文件上方定义,表示一个常量。 -
const修饰的变量:
const 数据类型 常量名 = 常量值
通常在变量定义前加关键字const,修饰该变量为常量,不可修改。
实例如下所示。
#include <iostream>
using namespace std;
//1、#define宏常量
#define Day 7
int main()
{
//Day = 14; //错误,定义的Day是常量,一旦修改,就会报错
cout << "一周总共有:" << Day << "天" << endl;
//2、const修饰的变量
const int month = 12;
//month = 24; //错误,const修饰的变量也称为常量,一旦修改,就会报错
cout << "一年总共有:" << month << "月" << endl;
system("pause");
return 0;
}
一周总共有:7天
一年总共有:12月
6. 关键字
关键字是C++中预先保留的单词(标识符)。
在定义变量或者常量时候,不要用关键字,否则会产生歧义。
下表列出了 C++ 中的关键字。
asm | do | if | return | typedef |
---|---|---|---|---|
auto | double | inline | short | typeid |
bool | dynamic_cast | int | signed | typename |
break | else | long | sizeof | union |
case | enum | mutable | static | unsigned |
catch | explicit | namespace | static_cast | using |
char | export | new | struct | virtual |
class | extern | operator | switch | void |
const | false | private | template | volatile |
const_cast | float | protected | this | wchar_t |
continue | for | public | throw | while |
default | friend | register | true | |
delete | goto | reinterpret_cast | try |
7. 标识符命名规则
C++ 标识符是用来标识变量、函数、类、模块或任何其他用户自定义项目的名称。一个标识符以字母 A-Z
或 a-z
或下划线 _
开始,后跟零个或多个字母、下划线和数字0-9
。C++ 标识符内不允许出现标点字符,比如 @
、&
和 %
。C++ 是区分大小写的编程语言。因此,在 C++ 中,Manpower 和 manpower 是两个不同的标识符。
C++规定给标识符(变量、常量)命名时,有一套自己的规则:
- 标识符不能是关键字;
- 标识符只能由字母、数字、下划线组成;
- 标识符第一个字符必须为字母或下划线;
- 标识符中字母区分大小写。
下面列出几个有效的标识符:
mohd zara abc move_name a_123 myname50 _temp j a23b9 retVal