在避免杂散指针的情况下,这两个 if 条件如何评估?
if (vShop[0].vItem[vShop[0].itsActiveItem]!=NULL && vShop[0].vItem[vShop[0].itsActiveItem]->itsQuantity>0) DoPurchase();
其中 vShop[0] 是对象向量,vItem 是对象指针向量。
我想确保指针在进一步检查 vShop[0].vItem[vShop[0].itsActiveItem]->itsQuantity>0之前不会评估 NULL。
还是我必须单独做,即:
if (vShop[0].vItem[vShop[0].itsActiveItem]!=NULL) if (vShop[0].vItem[vShop[0].itsActiveItem]->itsQuantity>0) DoPurchase();
换句话说,第一种情况是否是顺序检查,如果第一个条件评估,第二个条件会自动删除?非常感谢。