問題タブ [null-pointer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
3254 参照

c++ - ヌルポインターの未定義の動作を印刷していますか?

この質問のサンプル コードを調べたとき、未定義の動作が原因で、その後の の使用を妨げていたと思いましたstd::coutしかし、null ポインターを出力しようとすると、ストリーム状態に設定され、std::ios_base::badbitstd::ios_base::failbit操作不能になる本当の原因であることが判明しました。このため、null ポインターを出力する (試行する) のが本当に未定義の動作であるかどうかに興味があります。だからここに私の質問があります:

  1. nullポインタを出力するのは未定義の動作ですか? もしそうなら、これを引き起こすのはストリームインサーターについて何ですか? インサーターは、ヌルポインターを逆参照しないほど十分にスマートであると確信しています。

  2. また、このコンテキストでヌルポインターに遭遇したときにインサーターがエラーマスクを設定する理由 (具体的には ) も知りたいbadbitです。文字列リテラルの終了のように扱わないのはなぜですか?

私は標準を手元に持っていません。残念ながらリンク切れにつながったソースは 1 つしか見つかりませんでした。

0 投票する
0 に答える
194 参照

java - ネストされた列を再配置すると NPE が発生するのはなぜですか?

別々の (ネストされていない) 2 つの列を持つ TableView がある場合、それらを再配置しようとするとすべて問題ありません。ただし、ネストされた列が 1 つでも存在する場合、何かを再配置しようとするとクラッシュします。

ここに私のxmlがあります:

そして、テーブルビューを設定するためにコントローラークラスから使用しているものは次のとおりです。

これを修正する方法を知っている人はいますか?列の再配置は必須であり、この障害を乗り越える必要があります。どんな助けでも大歓迎です!

0 投票する
3 に答える
1608 参照

java - null ポインターに関するコンパイラの警告を失わずに StringUtils.isEmpty を使用する

通常の代わりに、クラスと doif (myString == null || myString.equals(""))を使用することを好む傾向があります。org.apache.commons.lang.StringUtilsif (StringUtils.isEmpty(myString))

ただし、これには、少なくとも私が行っている方法では、大きな欠点があります。FindBugs またはコンパイラの警告メカニズム f. 元。Eclipse から - 明示的な null チェックが表示されなくなり、myStringnull の可能性があると見なされなくなるため、潜在的な (または確実な) null ポインターに関する警告が表示されなくなり、これらの警告は私の見解では非常に役立ちます。 .

例 (追加):

したがって、この欠点を排除または最小限に抑える方法がないことを確認してStringUtils.isEmpty、ヌルポインターの警告を使用して引き続き取得できるようにしています。たぶん@Nullcheck、メソッドに追加したい注釈などがisEmptyありますか?

追加: たとえば、 のようなカスタム注釈を作成し、それをlike@Nullcheckの引数に追加して、メソッドがその引数で null チェックを行うことを示し、コンパイラの警告メカニズムまたは FindBugs が処理するようにすることは可能でしょうか?明示的なヌルチェックのように?isEmptypublic static boolean isEmpty(@Nullcheck String str)if (StringUtils.isEmpty(myString))

0 投票する
1 に答える
135 参照

c - cholmod ロング バージョン関数は null ポインターを返す — c プログラミング

Macports 経由でインストールされた SuiteSparse @4.2.1_3 を使用しており、cholmod_dense 構造を割り当てたいと考えています。次のコードを検討してください。

次の出力が得られます。

つまりcholmod_dense、長いバージョンの構造体の割り当ては機能しませんが、整数バージョンはうまく機能します。これが起こる理由を知っている人はいますか?

0 投票する
0 に答える
206 参照

android - このスピナー アイテムを null にするにはどうすればよいですか?

ArrayAdapter からデータを取得するスピナーがあります。配列オブジェクトには toString() メソッドがあり、これはスピナーによって使用されます。

この場合、配列に項目が 1 つしかないときにアダプターを設定しています。配列内のオブジェクトは null ではない文字列を返しますが、スピナーには項目が 1 つありますが、それは null です。スピナーのアイテムとして有効な TextView がないのはなぜですか。アダプターが設定された直後にブレークポイントが設定されたプログラムを次に示します。

ブレークポイント

問題は次のとおりです。

式

これがMolDataクラスです

Abd は、問題のあるコードです。

さらなる明確化: 私が遭遇した問題は、getChildAt(0) が OnItemSelected リスナーで null を返すことでした。ただし、このコードが通常の起動で呼び出されると、アダプターが設定された後に getChildCount がゼロを示しますが、直後にリスナーが設定されると、その追加によるリスナーの呼び出しは有効な getChildAt(0) を持ちます! ただし、画面が回転されたためにこのコードが呼び出されると、追加されているため、リスナーが起動すると getChildAt(0) は null になります。通常の起動時には、このコードは UI とのユーザー インタラクションから呼び出されますが、画面が再起動された後、このコード (フラグメント内) は onResume() から呼び出されます。[onCreateから呼び出されましたが、ライフサイクルの後半に移動して、それが役立つかどうかを確認しましたが、成功しませんでした。]

0 投票する
2 に答える
455 参照

android - データベースから行データを取得し、Android で取得する

多くのテーブルがあり、テーブルに複数の行が含まれるプロジェクトに取り組んでいます。データベースからデータを取得し、を使用して表示するにはどうすればよいSimpleAdapterですか?

カーソルを使用してみましたが、データベースに格納されている最後の行の値しか取得できません。

で試してみると がArrayList<Hashmap<String, String>>NullPointerExceptionて、try catch ブロックでも解決されません。

そして、ここにそれを取得するためのコードがあります

私が間違っている場合は、データを取得して SimpleAdapter に表示するのを手伝ってください。

0 投票する
1 に答える
657 参照

c++ - C++ でヌル ポインタを削除すると、未定義の動作と見なされますか?

次のコードを検討してください。

質問:

  1. null ポインターを削除すると、未定義の動作と見なされますか?
  2. C++11 または C++14 で何か変更がありましたか?
0 投票する
1 に答える
137 参照

android - kinvey クライアント呼び出しの onsuccess メソッドを同期する方法

Kinvey をバックエンドとして使用してアプリを開発しています。私が得ている問題は、kinvey appData リクエストを呼び出すと、コントロールが kinvey 呼び出しの onsuccess メソッドに入らず、呼び出し元のメソッドの場所に戻ることです。これは、データをフェッチするためのkinveyクライアント呼び出しを持つ関数を呼び出している私のメインクラスです。

ここに私の GetAllCategories 関数があります

しかし、kinvey 呼び出しを実行した直後に制御が oncreate メソッドに戻り、onSuccess メソッドには移動しません。oncreate メソッド全体を実行した後、onSuccess に戻ります。しかし、それまでは、NUll ポインター例外が原因でアプリがクラッシュしていました。

私の悪いフォーマットを許してください、あなたが私にもっと説明したいことがあれば私に尋ねてください. 予想通りの感謝