我是靠谱客的博主 淡淡荔枝,最近开发中收集的这篇文章主要介绍指向class的指针使用方法实例,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

// pointer to classes example
#include <iostream>
using namespace std;

class Rectangle {
  int width, height;
public:
  Rectangle(int x, int y) : width(x), height(y) {}
  int area(void) { return width * height; }
};


int main() {
  Rectangle obj (3, 4);
  Rectangle * foo, * bar, * baz;
  foo = &obj;
  bar = new Rectangle (5, 6);
  baz = new Rectangle[2] { {2,5}, {3,6} };
  cout << "obj's area: " << obj.area() << 'n';
  cout << "*foo's area: " << foo->area() << 'n';
  cout << "*bar's area: " << bar->area() << 'n';
  cout << "baz[0]'s area:" << baz[0].area() << 'n';
  cout << "baz[1]'s area:" << baz[1].area() << 'n';       
  delete bar;
  delete[] baz;
  return 0;
}	

  运行结果:

obj's area: 12
*foo's area: 12
*bar's area: 30
baz[0]'s area:10
baz[1]'s area:18

  指向class的指针。

This example makes use of several operators to operate on objects and pointers (operators *&.->[]). They can be interpreted as:

 

expressioncan be read as
*xpointed to by x
&xaddress of x
x.ymember y of object x
x->ymember y of object pointed to by x
(*x).ymember y of object pointed to by x (equivalent to the previous one)
x[0]first object pointed to by x
x[1]second object pointed to by x
x[n](n+1)th object pointed to by x


Most of these expressions have been introduced in earlier chapters. Most notably, the chapter about arrays introduced the offset operator ([]) and the chapter about plain data structures introduced the arrow operator (->).

转载于:https://www.cnblogs.com/CodeWorkerLiMing/p/11074570.html

最后

以上就是淡淡荔枝为你收集整理的指向class的指针使用方法实例的全部内容,希望文章能够帮你解决指向class的指针使用方法实例所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(34)

评论列表共有 0 条评论

立即
投稿
返回
顶部