gpt4 book ai didi

c++ - C++中的指针有什么用?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:07:13 25 4
gpt4 key购买 nike

我在理解这个程序中指针的使用时遇到了一些困难:

#include<iostream.h>
class ABC
{
public:
int data;
void getdata()
{
cout<<"Enter data: ";
cin>>data;
cout<<"The number entered is: "<<data;
}
};
void main()
{
ABC obj;
int *p;
obj.data = 4;
p = &obj.data;
cout<<*p;
ABC *q;
q = &obj.data;
q->getdata();
}

我得到了以下步骤之前的所有内容:ABC *q;
那有什么作用?我的书说它是一个类类型的指针(它非常含糊不清,语法可悲)。但是,这是什么意思?指向 ABC 类地址的指针?

如果是,那么下一步会让我感到困惑。 q = &obj.data;
所以我们将这个指针指向 data 的位置,这是一个变量。那 ABC *q; 如何适应呢?

最后一步。 q->getdata(); 有什么作用?我的书说它是一个“指向成员函数运算符的指针”,但没有给出任何解释。

很高兴收到任何帮助!

最佳答案

那本书是错的,因为它应该是:

ABC *q;
q = &obj;
q->getdata();

或者使用一个整型指针:

ABC *q;
int *qq;
qq = &obj.data;
q = &obj;
q->getdata();

关于c++ - C++中的指针有什么用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20145057/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com