C++基础入门 | C++入门详解,一起学习!

2023-01-13 0 182

C++基础入门 | C++入门详解,一起学习!

C++此基础进阶

1.C++贝唐

1.1 第二个C++流程

#include

using namespace std;

int main()

cout << “hello world” << endl;

system(“pause”);

return 0;

C++基础入门 | C++入门详解,一起学习!

要量

1.2 注解

单行线注解://

二百一十三注解:/**/

1.3 表达式

数据类型 表达式名 = 表达式初始值;

1.3 表达式

(1)作用:记录流程中不可更改的数据

(2)定义常量的两种方式:

#define 宏常量:#define 常量名 常量值(通常定义在文件上方,一旦修改就会报错)

const修饰的表达式:const 数据类型 常量名=常量值(通常在表达式定义前加关键字const)

1.5 关键字

说明:在定义表达式或者常量的时候,不能使用关键字

C++总计63个关键字,其中C语言占32个关键字

其中画圈的是C语言的关键字

这里要注意了

false和true并不是C语言的关键字

所以C++兼容C的绝大多数语言特性

C++基础入门 | C++入门详解,一起学习!

要量

1.6 标识符命名规则

说明:给表达式起名的时候要做到见名知意

(1)标识符不能是关键字

(2)标识符只能由字母、数字、下划线

(3)第二个字符必须是字符或者下划线

(4)标识符中区分大小写

1.7 命名空间

在C/C++中

表达式、函数和后面要学到的类

都是大量存在的

这些表达式、函数和类的名称

将都存在于全局作用域中

可能会导致很多冲突

使用命名空间的目的

是对标识符的名称进行本地化

以避免命名冲突或名字污染

namespace 关键字的出现

就是针对这种问题的

C++基础入门 | C++入门详解,一起学习!

要量

1.71命名空间定义

定义命名空间

需要使用到namespace关键字

后面跟命名空间的名字(随自己定义)

然后接一对{} 即可

{}中即为命名空间的成员

注意:一个命名空间就定义了一个新的作用域,命名空间中的所有内容都局限于该命名空间中

例如:将上方代码进行修正,如下:

C++基础入门 | C++入门详解,一起学习!

在上述代码中会发现,若想访问命名空间中的表达式,则需要借助一个作用符 :: 这个符号叫做 域作用限定符,xnh :: rand 的意思就是,去左边这个叫xnh的域(命名空间)里面找rand这个表达式。

若我们想打印全局域中的一个表达式,可以如下图:

C++基础入门 | C++入门详解,一起学习!

请注意:命名空间内的表达式只能允许声明和初始化,而不能在其中进行赋值!

C++基础入门 | C++入门详解,一起学习!

①命名空间的普通定义

C++基础入门 | C++入门详解,一起学习!

C++基础入门 | C++入门详解,一起学习!

②命名空间可以嵌套定义

C++基础入门 | C++入门详解,一起学习!

C++基础入门 | C++入门详解,一起学习!

③同一个工程中允许存在多个相同名称的命名空间,编译器最后会合成同一个命名空间中

C++基础入门 | C++入门详解,一起学习!

C++基础入门 | C++入门详解,一起学习!

虽然将xnh这个命名空间分开写在了List.h和List.cpp两个文件中,但最后会合成同一个命名空间中。

1.72命名空间的使用

①加命名空间名称及作用域限定符

C++基础入门 | C++入门详解,一起学习!

②使用using namespace 命名空间名称引入

using namespace 命名空间名称;

这句代码的意思就是把整个命名空间展开,这样当我们使用命名空间下的表达式、函数等等就不需要加作用域限定符了,用起来方便,但隔离失效了。

例如:

C++基础入门 | C++入门详解,一起学习!

会发生如下的情况:

C++基础入门 | C++入门详解,一起学习!

这样容易造成命名冲突问题,为了解决这个问题,出现了第三种引入方法。

C++基础入门 | C++入门详解,一起学习!

这种方法可以防止命名冲突的问题,因为它只引入了一部分。

今天就分享到这里啦

欢迎朋友们留言评论

我们一同讨论

感兴趣的朋友们可以关注公众号

了解后续知识点~

,如有侵权烦请告知,我们会立即删除.

慧明科技

公众号 :huimingkeji

联系电话:010-57110625

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务