C ++取消引用结构指针

时间:2015-06-26 18:04:55

标签: c++ pointers

我对C ++结构和指针有疑问。

所以我想说我定义了一个名为'info'的结构。这个结构有一个名为'state'的成员。

现在假设我声明了一个'info'的实例,然后我声明了一个'info'类型的指针。如果我只想使用指针,我将如何取消引用结构,以便我可以修改'state'的值?

例如:

info instance;
info * pointer = &instance;

//Want to change the value of 'state' to 23

*pointer.state = 23;

// or

*(pointer).state = 23;

// or

*(info.currentState) = 23;

其中任何一种情况都有效吗?

1 个答案:

答案 0 :(得分:6)

您可以使用(*pointer).state = 23;,但首选方法是pointer->state = 23;

基本上,当您从结构或类引用公共变量时,表示法为object.itempointerToObject->item

箭头符号会自动为您指出指针。