首页 理论教育 C++语言(中学版)-直接成员运算符

C++语言(中学版)-直接成员运算符

时间:2023-08-13 理论教育 版权反馈
【摘要】:直接成员运算符的左边是一个结构变量,右边是该结构变量中的一个成员。下面的程序说明了点操作符“.”运算符的用法。例10-1点操作符的用法。程序运行结果如下:说明:是现在的标准C++头文件,Dev-C++中废除了是C标准库头文件的C++标准库版本,strlen、strcpy、strcat、strcmp等都在这里面了。因而无法看做是同类型数据之间的赋值。但两个不同结构名的变量间是不允许相互赋值的。即使两者包含有相同的成员。

C++语言(中学版)-直接成员运算符

直接成员运算符(也称点运算符)的左边是一个结构变量,右边是该结构变量中的一个成员。通过它可以对成员变量进行操作。下面的程序说明了点操作符“.”运算符的用法。

例10-1 点操作符的用法。

程序运行结果如下:

说明:

(1)<iostream>是现在的标准C++头文件,Dev-C++中废除了<iostream.h>。

(2)<cstring>是C标准库头文件<string.h>的C++标准库版本,strlen、strcpy、strcat、strcmp等都在这里面了。(www.xing528.com)

(3)C++标准函数库的所有元素都被声明在一个名空间中,这就是std名空间。为了能够访问它的功能,用using namespace std;这条语句表示将使用标准名空间中定义的元素。

注意:在例10-1中可以看到,两个结构变量之间可以赋值。而在数组中,数组是不能彼此赋值的。如下面的数组赋值语句就会导致一个编译错误

这是因为数组名是一个常量指针,不允许赋值。数组实质上是一种数据类型的聚集,它不是数据类型,定义的每个数组都被认为是不同类型的,即使数组元素的个数及数据类型都相同(如上例中的m与n)。因而无法看做是同类型数据之间的赋值。

而由于结构的大小固定,所以可以互相赋值。但两个不同结构名的变量间是不允许相互赋值的。即使两者包含有相同的成员。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈