タグ付けされた質問 「null」

Nullは、コンテキストに応じて、* nothing *または* unknown *を意味します。SQL固有の質問には「sql-null」タグを使用してください。

6
AngularJSの場合は未定義またはnull
時計処理関数を作成するときは、newValパラメータをオンundefinedとでチェックしますnull。AngularJSにそのような動作があるのに、特定のユーティリティメソッドがないのはなぜですか?ですangular.isUndefinedが、ありませんangular.isUndefinedOrNull。手作業でそれを実装するのは難しいことではありませんが、各コントローラーでその機能を持つために角度をどのように拡張しますか?Tnx。 編集: 例: $scope.$watch("model", function(newVal) { if (angular.isUndefined(newVal) || newVal == null) return; // do somethings with newVal } そのような方法で処理することは一般的に受け入れられている慣行ですか? 編集2: JSFiddleの例(http://jsfiddle.net/ubA9r/): <div ng-app="App"> <div ng-controller="MainCtrl"> <select ng-model="model" ng-options="m for m in models"> <option value="" class="ng-binding">Choose model</option> </select> {{model}} </div> </div> var app = angular.module("App", []); var MainCtrl = function($scope) …

7
値0の代わりにNULLを使用できますか?
NULLの値の代わりにポインタを使用でき0ますか? それとも、そのことについて何か問題がありますか? たとえば、 int i = NULL; の代わりとして: int i = 0; 実験として、次のコードをコンパイルしました。 #include <stdio.h> int main(void) { int i = NULL; printf("%d",i); return 0; } 出力: 0 確かにそれは私にこの警告を与えます、それ自体は完全に正しいです: warning: initialization makes integer from pointer without a cast [-Wint-conversion] しかし、結果は同じです。 これで「未定義の動作」にぶつかりますか? NULLこのように利用することは許されますか? NULL算術式の数値として使用することに問題はありますか? そして、この場合のC ++の結果と動作は何ですか? 私はの答え読み持っている「\ 0」、NULLの違いは何をして0との違いは何かについてNULL、\0そして0それが正しい使用にも非常に許容され、場合、ですが、私はそこからの簡潔な情報を取得していないNULLとして、代入やその他の算術演算で操作する値。

1
GetRefのメモリ消費量(ガベージコレクション)がKB4525236で変更されました
Windows 2016サーバー/ Windows 10クライアントにKB4525236をインストールした後、メモリ不足の問題が発生します。このセキュリティ修正により、から関数を呼び出すときにメモリがガベージコレクションされる瞬間が変わったようGetRefです。 プレKB4525236 を通じて呼び出された関数で作成された各インスタンスGetRefは、インスタンス変数が次のように設定されるとすぐにガベージコレクションされます。nothing KB4525236の投稿 関数で作成された各インスタンスGetRefはメモリに残り、関数全体が完了するまでガベージコレクションされません。ループでインスタンスを作成すると、特に32ビットプロセスでは、これがすぐに加算されてメモリ不足につながる可能性があります。 ご質問 オンラインで関連するものを見つけることができないので、同じ問題が発生している他の人から確認を得たいと思います。スクラッチを 編集:これは同じ問題ですが、現時点で解決策はありません (KB4524570(2019年11月12日)Windows 10 1903以降のvbscript.dll class_terminateバグ) 誰かが検証して実行可能なソリューションを知っていれば、それは素晴らしいことです。 POC KB4525236がインストールされているデバイスで実行されている次のスクリプトは、次の場合のガベージコレクションの違いを示しています。 直接呼び出されます:最初のインスタンスが破棄された後にのみ2番目のインスタンスが作成されます(これは私たちの望ましい動作です) コールスルーGetRef:最初のインスタンスが破棄される前に 2番目のインスタンスが作成されるため、メモリを使用する2つのインスタンスがあります。 名前を付けて保存:KB4525236.vbs として実行:wscript KB4525236.vbs Dim Name, Log Class IDummyInstance Dim FName Sub Class_Initialize FName = Name Log = Log & "Initialize " & FName & VbNewLine End Sub Sub Class_Terminate …

4
main()からNULLを返す理由
CやC ++プログラムでのNULL戻り値として使用するコーダーが時々見られます。main()たとえば、次のようなものです。 #include <stdio.h> int main() { printf("HelloWorld!"); return NULL; } このコードをgccでコンパイルすると、次の警告が表示されます。 警告:キャストなしでポインタから整数を返す[-Wint-conversion] これは、マクロNULLが展開され(void*) 0、mainの戻り値がtypeであるため、妥当intです。 私が短いC ++プログラムを作るとき: #include <iostream> using namespace std; int main() { cout << "HelloWorld!"; return NULL; } そして、それをg ++でコンパイルすると、同等の警告が表示されます。 警告:NULLから非ポインター型 'int'に変換しています[-Wconversion-null] しかし、なぜ警告をスローするときのNULL戻り値として使用するのmain()でしょうか。それは単に悪いコーディングスタイルですか? 警告にもかかわらず、の戻り値としてのNULL代わりに使用する理由は何ですか?0main() これが適切であるかどうかは実装定義であり、適切である場合、なぜ実装はポインタ値を取り戻したいのでしょうか?
10 c++  c  null  return  return-value 

1
nullポインターにゼロを追加することはできますか?
ヌルポインターの場合、ポインター演算は許可されていません。しかし、私がこのようなものを持っていると想像してください: class MyArray { int *arrayBegin; // pointer to the first array item, NULL for an empty array unsigned arraySize; // size of the array, zero for an empty array public: int *begin() const { return arrayBegin; } int *end() const { return arrayBegin + arraySize; } // possible? (arrayBegin …

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.