問題タブ [nothing]

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 投票する
8 に答える
108508 参照

vb.net - 「DateTime」が「Nothing」かどうかを確認できないのはなぜですか?

VB.NET で、DateTime変数を「未設定」に設定する方法はありますか? また、 を に設定できるのにDateTimeNothingであるかどうかを確認できないのはNothingなぜですか? 例えば:

2 番目のステートメントは、次のエラーをスローします。

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

vb.net - ByRefを渡すときにVBがNull参照をチェックする

参照によって文字列を受け入れる関数があります。

私はこのようにそれを呼び出す場合:

次のように呼び出す場合とは異なることをしたい:

この違いは、VB .NET でメソッドを呼び出す方法で検出できますか?

編集

なぜこれをやりたいのかを明確にするために、2つの方法があります。

すべてのロジックは 2 番目のオーバーロードにありますが、関数を含むNothing変数が渡された場合とは異なるロジックの分岐を実行したいと考えています。 Nothing

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

haskell - Haskellの「Maybe」を使用して、型宣言[初心者の質問]

Haskellの実験を始めましたが、問題があります。qqqは、「Nothing」で呼び出された場合は1つの文字列を出力し、「Justsomething」で呼び出された場合は他の文字列を出力する関数です。

最初の試みはうまくいったようです:

だが:

  • 失敗させようとするmain = qqq (Nothing)と(「制約内のあいまいな型変数 `a0':(a0を表示)'qqq'の使用から生じる")
  • 失敗した場合に型署名を追加したい場合:
    • qqq :: Maybe x => x -> IO ()-> Type constructor 'Maybe' used as a class->でも、そうではありませんか?
    • qqq :: (Maybe x) -> IO ()。これで、署名自体が成功したように見えます。しかし、場合のようにmain = qqq (Just 43)その不思議な(Show a0)エラーで失敗し始めますmain = qqq (Nothing)

質問:

  1. でqqqを呼び出すことNothingが、で呼び出すのと非常に異なるのはなぜJust 43ですか?
  2. (Show a0)ですか?エラーメッセージでのみ言及されています。これを使用しようとすると、「スコープ内に表示されない」などの結果になります。
  3. このための正しい型署名とは何ですか?Haskellの型注釈を推測する方法は?次のようなものを期待しています:
0 投票する
2 に答える
417 参照

scala - Scala: 多相型のシングルトン インスタンスに Nothing を使用する

次のようなポリモーフィックな特性が与えられた場合

次のようなさまざまな特殊なインスタンスを実装したい場合があります。

など。現在、頻繁に必要とされる変換は恒等変換でもあります。型 T ごとに ID を特殊化する代わりに、すべての型 T に対して単一のインスタンスを 1 つだけ使用する方が望ましいようです。私の質問は、Scala でこれを実現する最善の方法は何ですか?

ここに私が見つけたものがあります: List[T] が List.empty[T] と Nil を実装する方法を見て、私は Nothing を型 T として使用してみました. Nothing は他のすべての型のサブタイプであるため、これは理にかなっているようです:

これはうまくいくようです。ただし、このインスタンスをそのまま使用したい場合は、次のようにします。

「タイプの不一致; 検出: Identity.type, 必須: Transform[String]」というコンパイラ エラーが発生します。それを使用するには、明示的にキャストする必要があります。

これが最善の方法であるか、それとも「適切な」方法であるかはわかりません。アドバイスをありがとう。

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

vb.net - 値の型を何も置き換えない方法は?

Web サービス メソッドを呼び出す vb.net アプリケーションを作成しています。問題の webservice メソッドは、(文字列 x、文字列 y、文字列 z....整数 a、整数 b、整数 c) などの約 20 個のパラメーターを受け入れます。

整数 (ab または c) のいずれかが意図的に値に設定されていない可能性があります。ただし、Integer は値型であるため ( Stack Overflow に感謝します)、Nothing に設定することはできません。したがって、ユーザーがこれらの整数に対して特定の値を選択していない場合は、デフォルトで -1 に設定されます。ただし、webservice メソッドでは、ユーザーがこれらの整数を初期化しなかった場合 (0 または -1 ではなく、Nothing/Null が必要)、Null/Nothing を渡すように求められます。

Webサービスへの呼び出しがわずかに異なる複数の条件文を除いて、Webサービスに必要なものを与えるにはどうすればよいですか(たとえば、整数a = -1の場合、(x、y、z、Nothing、b、c)などでWebサービスを呼び出します... )?

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

vba - VBA: 条件付き - 何もない

以下に示すように、VBA アプリケーションには条件がありIfます。

コードをデバッグ モードで実行すると、 「変数なし」Ifの場合でも条件が true を返すことがわかりました。My_Object

誰かがこれを説明してもらえますか? My_Object.Compute存在するときだけ実行したいMy_Object

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

vb6 - Is Nothing の比較で型の不一致が発生する

「Listivew.Tag プロパティが何もない」かどうかを確認しようとしています。

エラーを回避するための最初のチェックとして、すべてのシナリオで普遍的に「Is Nothing」チェックを行っていました

誰かがVB 6でそれを行う方法を説明できますか?

エラー「type-mismatch」を与える

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

vb.net - VB.Net 2010 で double に null 値を使用するにはどうすればよいですか?

率直な質問: double の変数がいくつかあります。それらに「null」状態を保存できるようにしたいと思います。つまり、変数に有効なデータが含まれていないことを表すことができる必要があります。ブール値の「有効な」変数をすべての double に関連付けるのは本当に嫌です。これは醜く、不要になる可能性があります。

まず、「IsNothing」の概念をチェックできるようにするには、変数を別の方法で宣言する必要があることがわかったので、次のようにします。

(疑問符に注意してください)。そのように宣言しないと、エラー チェックで「IsNot には参照型を持つオペランドが必要です」というメッセージが表示されます。

宣言したら、変数を次のように設定します...

...ゼロsomeDouble IsNot Nothingに設定しているようです。なぜなら、変数が有効なデータとして 0 を正当に格納できるため、これは悪いかどうかをチェックする if/else ステートメントでコードを実行しないからです。

ここで何が欠けていますか?ありがとう!

編集:クラスでプロパティを使用してGetこれらSetの値を使用していたことを省略しました。Propertyの型を aDoubleではなくa のままにしたことを除いて、私は正しいことをしていたことが判明したDouble?ため、値ではなくゼロにキャストバックしていましたNothing。ただし、以下の回答にはまだ有用な情報があります。

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

vb.net - VB.NET で何もパラメーターを渡さない (オブジェクト参照がオブジェクトのインスタンスに設定されていない)

Vb.NET のパラメータに "Nothing" を渡そうとしています (VS 2010 を使用してすべてをデフォルトにします)。

コードは次のようになります。

どこ :

と :

私は VB.NET に詳しくありませんが、Nothing パラメータを渡すことができないのはなぜですか? C++ では NULL を渡すことができますが、これはここでは不可能ですか?

次のエラーが表示されます。

追加情報: オブジェクト参照がオブジェクトのインスタンスに設定されていません。

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

vb.net - Final ブロッ​​クでオブジェクトを Nothing に設定するのはなぜですか?

この VB.NET コードでは:

o を に設定する必要があるのはなぜNothingですか? ブロックに設定しないとどうNothingなりますか? オブジェクトがGC用にマークされるため、Finally設定しなくても問題ないと思います。Nothing