1.NODE **ptr = (NODE **)node
NODE *delPtr = *ptr;
obj->addList(delPtr->strKey);
2.NODE **ptr = (NODE **)node;
obj->addList(*ptr->strKey);
私が作成しているコア ダンプ プログラムについてこれを分析していますが、機能は同じようです。これら2つの宣言の違いは何ですか? 2 つ目もコア ダンプを実行しますか? 助けてください。
演算子の優先順位->
は、逆参照演算子の前に評価されると言う*
ので、
obj->addList(*ptr->strKey);
実際には
obj->addList(*(ptr->strKey));
この形式を使用する場合は、括弧を使用する必要があります*ptr
obj->addList((*ptr)->strKey);