"运算符-6ren"> "运算符-大家好,我对“->”运算符有疑问。这是我的代码:和 OfferingPair * weeklySchedule ; 在 Schedule 类内部清除,OfferingPair 在头文件中清除。 str-6ren">
gpt4 book ai didi

指针的 C++ 帮助,尤其是 "->"运算符

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:11:21 27 4
gpt4 key购买 nike

大家好,我对“->”运算符有疑问。这是我的代码:和 OfferingPair * weeklySchedule ;Schedule 类内部清除,OfferingPair 在头文件中清除。

struct     OfferingPair
{
Offering * off ;
OfferingPair * nextOff ;

}


Schedule::Schedule ()
{
this->weeklySchedule=new OfferingPair[5];

for(int i=0;i<5;i++)
{
weeklySchedule[i]->off=NULL;
weeklySchedule[i]->nextOff=NULL;
}
}

并且因为:

weeklySchedule[i]->off=NULL;
weeklySchedule[i]->nextOff=NULL;

行我得到一个错误,上面写着:

base operand of ‘->’ has non-pointer type ‘OfferingPair’

但 weeklySchedule[i] 是一个指针,为什么我不能使用“->”?提前致谢。

最佳答案

weeklySchedule[i] 返回对象本身,而不是指针,所以你必须使用

weeklySchedule[i].off=NULL;
weeklySchedule[i].nextOff=NULL;

我建议您将代码修改为:

std::vector<OfferingPair> weeklySchedule

虽然。这是 RAIIght (c) 要做的事情。

关于指针的 C++ 帮助,尤其是 "->"运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13016702/

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