gpt4 book ai didi

c++ - 如何通过指针从函数访问类的成员?

转载 作者:搜寻专家 更新时间:2023-10-31 00:59:24 27 4
gpt4 key购买 nike

我愿意

  1. 创建类/结构项数组 (c1)
  2. 然后创建一个指向原数组(*cp1)的指针数组,可以排序
  3. 然后从一个函数中访问该类的成员。

但是我在最初的函数调用中卡住了。

这是我的基本代码:

struct Car
{
int speed;
};

Car c1[5];
Car *cp1[5];

int main() {
for (int i=0;i<5;i++) {
c1[i].speed = i;
cp1[i] = &c1[i];
}

garage(cp1, 5);
}

void garage(Car **ar, int n) {
int p = (*ar[n / 2])->speed;
}

最佳答案

首先,您的 garage 函数在您调用它的地方不为编译器所知,因为它是在 main 下定义的。要修复它,要么将函数定义放在 main 之上,要么使用原型(prototype)引入它。

其次,在 int p = (*ar[n/2])->speed; 行,*ar[n/2] 不是指针,因此您应该使用 . 而不是 ->,如 int p = (*ar[n/2]).speed;

关于c++ - 如何通过指针从函数访问类的成员?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33408970/

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