每次我讀到并聽到指標是一場噩夢時,我都是編程和游戲開發的新手,我想問一下在這種情況下是否有必要檢查指標,如下所示?
// create a component of a certain type and return a pointer to data of this type
StaticMeshCompt = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("StaticMesh"));
if (StaticMeshCompt)
{
// further work with the component
}
uj5u.com熱心網友回復:
不,不需要檢查指標。CreateDefaultSubobject可以回傳的情況nullptr是:
- 傳遞的類是
nullptr(保證對 any 有效UObject)。 - 該類具有抽象標志(不是這種情況
UStaticMeshComponent)。 - 由于缺少可用記憶體,分配本身失敗(此時,您還有其他問題)。
uj5u.com熱心網友回復:
CreateDefaultSubobject正如 David G 和 ChrisMM 所說,如果函式有可能失敗或回傳空指標,則有必要檢查指標。如果已知該函式總是回傳一個有效物件,則在這種情況下可能不需要檢查。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/450297.html
