問題タブ [casting]

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

c++ - X が typeid を介して Y から派生しているかどうかを確認します

ポインターを long (SendMessage()) に変換する必要があり、反対側で変数が正しいかどうかを安全に確認したい。だから私はdynamic_castをやろうと思っていましたが、仮想ではないクラスではうまくいきません。次に、typeidを実行することを考えましたが、派生varをベースとして渡すまでは機能します。

ポインタが実行時に期待しているものであるかどうかを確認する方法はありますか? typeid を使用して、ポインターが特定のベースから派生した型であるかどうかを確認する方法はありますか?

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

objective-c - self を id にキャストする必要があるのはなぜですか?

(id) 引数を取る init メソッドがあります。

私はそれを次のように呼ぼうとしています:

しかし、XCode は、引数が「明確な Objective-C 型」であることについて不平を言っています (通常、型の不一致または間接エラーのレベルを示します)。

self を (id) に明示的にキャストすると、警告は消えます。どちらの場合でも、コードは期待どおりに実行されます。興味深いことに、次の行で、id を受け取る別のメソッドに self を渡していますが、これは正常に機能します。

何か微妙なものが欠けているのではないかと思っています-それともコンパイラの特異性ですか?

それが必要な理由がはっきりするまで、キャストするだけでは完全に快適ではありません。

[編集]

追加のコードを提供するよう求められました。他に関連するものがたくさんあるかどうかはわかりません。これが呼び出しを行う実際のコードです。それ自体が init メソッド内にあることに注意してください。initWithSource警告を出しているのは への呼び出しです:

そして、呼び出される init メソッドは次のとおりです。

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

c++ - 不整合による static_cast の混乱

Visual Studio 2008 で次のコードをコンパイルして実行するたびに、なぜでしょうか。

答えが 25 であるのに、間違った値の 26 を取得します。

ただし、ダブルスで静的キャストを使用すると、25 という正しい答えが得られます。

間違った出力をどのように説明できますか?

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

type-conversion - C# での型変換

オブジェクトとキャストするオブジェクトの型を取得する型変換の汎用メソッドを作成しようとしています。

Convert.ChangeType()使えばやりたいことはできますが、実行に時間がかかりすぎます。私が望むようなジェネリッククラスを作成するための最良の方法は何ですか?

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

編集:明確にするために...

例の場合; クエリを実行したところ、DataRow が返されました。そして、longにキャストしたい10進数として入力した列があります。このメソッドを呼び出すと、decimal を long にキャストするのに非常に時間がかかります。

また、このメソッドの T 型は値型のみである可能性があります。つまり、「T : 構造体」

0 投票する
5 に答える
12132 参照

java - 複数の境界を持つ Java ジェネリックをキャストするにはどうすればよいですか?

Javaのオブジェクトを結合されたジェネリック型にキャストすることは可能ですか?

私は次のような方法を持っています:

両方のインターフェイス (Foo と Bar) を実装するクラスがある場合、このメソッドを呼び出すことは問題ありません。

問題は、このメソッドを呼び出す必要があるときに、渡す必要のあるオブジェクトを受け取ったjava.lang.Objectときに、コンパイラを満足させるためにキャストする必要があることです。しかし、このキャストを作成する方法がわかりません。

編集:

問題は、次のような関数にあります。

}

0 投票する
6 に答える
338 参照

c#-3.0 - 型キャスト クラスを処理するインターフェイスを実装するにはどうすればよいですか?

クラスの tType を関数に渡し、クラス オブジェクトをジェネリック関数に渡したい。

クラスのメソッドにアクセスできるように、(クラスの) その Type にキャストできる必要があります。

何かのようなもの:

これらのクラスのインターフェイスを実装してから、そのインターフェイスにキャストしますか? もしそうなら、誰かが例を挙げてもらえますか?

私は過去数時間グーグルをしてきましたが、これまでこれを行う必要はありませんでした.

誰かが光を当てることができますか?

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

c# - C#でint型を確認しますか?

とりわけ、オブジェクトとタイプを取り込んで、オブジェクトをそのタイプに変換する関数があります。ただし、入力オブジェクトは多くの場合doubleであり、intのバリ​​エーション(uint、longなど)を入力します。ラウンド数がdouble(4.0など)として渡された場合はこれを機能させたいのですが、(4.3)で10進数が渡された場合は例外をスローします。Typeが何らかのintであるかどうかを確認するためのよりエレガントな方法はありますか?

ありがとう。

0 投票する
4 に答える
2211 参照

c# - Tag プロパティにアクセスするために、Buttons オブジェクトと MenuItem オブジェクトの両方をキャストできるオブジェクトのタイプはありますか?

MenuItem オブジェクトと Button コントロール オブジェクトの両方を、参照できる "Tag" プロパティのオブジェクト タイプにキャストしたいと考えています。

そのようなオブジェクトタイプはありますか?

例えば

これが失敗する場合を除き、「オブジェクト タイプ 'System.Windows.Forms.MenuItem' をタイプ 'System.Windows.Forms.Control' にキャストできません。

この例で Control を置き換えるものは何ですか?

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

c# - C# で enum を int にキャストする必要があるのはなぜですか?

これは私のコードです:

とにかくキャストを防ぐ方法はありますか?

0 投票する
9 に答える
655803 参照

c++ - static_cast、dynamic_cast、const_cast、および reinterpret_cast はいつ使用する必要がありますか?

次の適切な用途は何ですか:

  • static_cast
  • dynamic_cast
  • const_cast
  • reinterpret_cast
  • C スタイル キャスト(type)value
  • 関数スタイルのキャストtype(value)

どの特定のケースでどちらを使用するかをどのように決定しますか?