嗨,大家好我有" - >"运算符的问题.这是我的代码:并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’
但是每周时间表[i]是一个指针,为什么我不能使用" - >"?.谢谢提前.
Luc*_*ore 14
weeklySchedule[i] 返回对象本身,而不是指针,所以你必须使用 .
weeklySchedule[i].off=NULL;
weeklySchedule[i].nextOff=NULL;
我建议你修改你的代码:
std::vector<OfferingPair> weeklySchedule
虽然.这是RAIIght(c)要做的事情.