现在的位置: 首页 > 综合 > 正文

C和C++语言中->和.的区别

2018年04月19日 ⁄ 综合 ⁄ 共 323字 ⁄ 字号 评论关闭

C++语言中".""->"都是用来访问结构成员的符号,这一点的确没有区别,区别在于符号的左边。

"." 通过结构名直接访问结构成员,左边是结构的名称!(类似于直接寻址)

"->"通过指向结构的指针间接地访问结构成员,左边是指针变量!(类似于间接寻址)

可能说的不大明白,下面举一个例子:

typedef struct Param

{

  int Devil;

  int Bios;

}PARAM;

typedef struct tagShMem

{

   PARAM  stDevilBox[10];

}ShMEM;

void InitShMem()

{

  ShMEM* qi = new ShMEM;

  qi->stDevilBox[3].Devil = 2;  (1)

...

...

}

仔细看(1)就清楚了。

抱歉!评论已关闭.