C++ : 从入门到精通

1:<string> 与<string.h>区别

#include<string.h> : 是C语言的标准库,主要是对字符串进行操作,是基于 char* 进行操作的,例如常见的字符串操作函数 stpcpy , strcat都是在 头文件中声明的。

#include<string> : 是 C++ 语言的标准库,主要定义了 string类,你可以包含这个头文件,然后定义一个字符串对象,对于字符串的操作就基于该对象进行。

2: C++ 中 : #include<> 与 #include"" 区别 。

<>先去系统目录中找头文件,如果没有在到当前目录下找。所以像标准的头文件 stdio.h、stdlib.h等用这个方法。

而""首先在当前目录下寻找,如果找不到,再到系统目录中寻找。 这个用于include自定义的头文件,让系统优先使用当前目录中定义的。

3: C++ 中 std 是什么意思

std::是个名称空间标识符,C++标准库中的函数或者对象都是在命名空间std中定义的,所以我们要使用标准库中的函数或者对象都要用std来限定。

4: 冒号(:)和双冒号(::) 区别

4.1:双冒号(::)

1:表示“域操作符”

例:声明了一个类A ,类A里声明了一个成员函数 void function() , 但没有在类的声明里给出 function函数的定义,那么在类外定义 function时,就要写成  void A::function() , 那么 function()函数就是类A的成员函数

2: 直接用在全局函数前,表示是全局函数
例::: 一般还有一种用法,就是直接用在全局函数前,表示是全局函数。当类的成员函数跟类外的一个全局函数同名时,在类内定义的时候,则此函数名默认调用的是本身的成员函数;如果要调用同名的全局函数时,就必须打上::以示区别。比如在VC里,你可以在调用API函数时,在API函数名前加::

3:表示引用成员函数及变量,作用域成员运算符
例:System::Math::Sqrt() 相当于System.Math.Sqrt()

4.2 :冒号(:)

1表示机构内位域的定义(即该变量占几个bit空间

2  构造函数后面的冒号起分割作用,是类给成员变量赋值的方法,初始化列表,更适用于成员变量的常量const型。

3   public:和private:后面的冒号,表示后面定义的所有成员都是公有或私有的,直到下一个"public:”或"private:”出现为止。"private:"为默认处理。

4: 类名冒号后面的是用来定义类的继承。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值