-1
C++で動作するようにNULLまたはnullptrを取得しようとしています。C++のヌルチェック
template <class DataType>
void printInorder(someNode<DataType>* node)
{
if (node == NULL)
return;
/* first recur on left child */
printInorder(node->left);
/* then print the data of node */
printf("%d ", node->data);
/* now recur on right child */
printInorder(node->right);
}
私がしようとしている場合(ノード== nullptr)の場合(ノード== NULL)を設定する:
は、私はそうのように、バイナリツリーのINORDERトラバーサルをやっていると言います。私もちょうど(!ノード)ifしようとしましたが、nullチェックラインは無視され続けて渡されます。私のコードはあまりにも長く含まれていますが、このタイプのエラーの一般的な原因を知っていますか? C++ではnullを使用していませんが、比較的一般的なエラーのようです。つまり、私はこの質問に対する答えを見つけることができませんでした。
変数がnullであることを確認してください。 – Barmar
他人に助けを求めている間にあなたの長いコードを取り、それを[mcve]に減らしているのは礼儀正しいことです。チェックがスキップされている場合、これは 'int *'を取って、それがヌルなら1を返し、ヌルでない場合は0を返し、ヌルが与えられたときに0を返すか、どちらの場合でも、私たちはそれを実行して見ることができる限りです。 – chris
あなたが示したコードは正しいです。エラーは別の場所です。 –