C++对象成员的使用
Posted LC编程开发者
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++对象成员的使用相关的知识,希望对你有一定的参考价值。
对象成员的使用
在程序中经常需要访问对象中的成员,访问对象中的成员可以有三种方法:
(1) 通过对象名和成员运算符访问对象中的成员;
(2) 通过指向对象的指针访问对象中的成员;
(3) 通过对象的引用变量访问对象中的成员;
C++中类对象引用成员的方式,与C语言的struct结构体访问成员一样。
3.1 通过对象名和成员运算符访问对象中的成员
假设有如下的类定义:
class student //以class开头
{
public:
char name[32];
char addr[32];
long long number;
public:
void print();
};
void student::print()
{
cout << "name = " << name << endl;
cout << "addr = " << addr << endl;
cout << "number = " << number << endl;
}
student stud1, stud2;
在程序中可以写出如下的语句:
stud1.number = 1001; //假设number 已定义为公用的成员
表示将整数1001赋给对象stud1中的成员变量number,其中“.”是“成员运算符”,用来对成员进行限定,指明所访问的是哪一个对象中的成员。注意不能只写成员名而忽略对象名。
访问对象中成员的一般形式为:
对象名.成员名
不仅可以在类外引用对象的公用成员变量,而且,还可以调用对象的公用成员函数,同样,需要指出对象名,如:
stud1.print(); //正确,调用对象stud1的公用成员函数
print(); //没有指明是哪一个对象的print()函数
对于 print() 没有指明对象名,编译时把print()作为普通函数处理。如下是一个程序测试例子:
程序运行结果如下:
可以看到,定义了student类,然后,定义对象如下:
student stud;
然后,给对象的成员变量赋值。在访问成员变量的时候,在对象名后面使用点号“.”来访问对象的某个成员。
注意,在类体外访问的成员,需要定义为public类型,才可以在类体外访问。
3.2 通过指向对象的指针访问对象中的成员
可以通过指针访问对象中的成员,如果有以下程序段:
程序运行结果如下:
可以看到,定义一个指针对象p,同时,给它赋值,如下:
student *ps = &stud;
然后,通过指针对象访问对象的成员,如同C语言的struct结构体访问结构体成员一样,通过指针运算符“->”来访问对象的成员。所以,有:
ps->name --- 访问指针对象ps的name成员变量;
ps->addr --- 访问指针对象ps的addr成员变量;
ps->print() --- 访问指针对象ps的print成员函数;
韦凯峰 Linux C/C++ 程序设计教程,Linux 系统编程,Openwrt 系统开发,微信:13926572996,QQ:1523520001,博客:www.mylinux.vip
以上是关于C++对象成员的使用的主要内容,如果未能解决你的问题,请参考以下文章
C++ - 使用 std::list,如何打印对象私有成员的链表?