对象指针(C++学习笔记 21)

对象指针就是用于存放对象地址的变量。

声明对象指针的一般语法形式:
类名 *对象指针名

1、用指针访问单个对象成员

在一般情况下,用点运算符 “ . ” 来访问对象成员,当用指向对象的指针来访问对象成员时,就要用 “ -> ” 操作符。
例 1: 对象指针的使用

#include<iostream>
using namespace std;
class exe{
	public:
		void set_a(int a){	//定义成员函数set_a,给数据成员赋值 
			x=a;   
		}
		void show_a(){	//定义成员函数show_a,输出数据成员的值 
			cout<<x<<endl;
		}
	private:
		int x;
};
int main(){
	exe ob;
	exe *p;
	ob.set_a(2);
	ob.show_a();
	p=&ob;
	p->show_a();
	(*p).show_a();
	return 0;
}

2、用对象指针访问对象数组

#include<iostream>
using namespace std;
class exe{
	public:
		void set_a(int a){	//定义成员函数set_a,给数据成员赋值 
			x=a;   
		}
		void show_a(){	//定义成员函数show_a,输出数据成员的值 
			cout<<x<<endl;
		}
	private:
		int x;
};
int main(){
	exe ob[2];  //定义类exe的对象数组ob[2] 
	exe *p;
	ob[0].set_a(10);
	ob[1].set_a(20);
	p=ob;  //把对象数组的地址赋给对象指针变量p 
	p->show_a();
	p++;
	p->show_a();
	return 0; 
}

其中的“ p=ob ” 表示把对象数组的第一个元素的地址(即数组的地址)赋给对象指针变量p。对象指针p加1 时,指向下一个数组元素。

猜你喜欢

转载自blog.csdn.net/aaqian1/article/details/84135259