Q&A
Unreal EngineのC++でCast
関数の使い方が分からなかったため、質問させていただきます。
下記のconst CircleCollider*...
から始まる行でエラーが発生します。
bool CircleCollider::CollideWith(const Collider* cCollider) { (途中省略) const CircleCollider* cCircleCollider = Cast<CircleCollider, Collider>(cCollider); (途中省略) }
エラーメッセージは次の通りです。
CircleCollider
クラスはCollider
クラスの派生クラスです。
エラーが発生する行で、基底クラスCollider
型のポインタを派生クラスCircleCollider
型のポインタにダウンキャストしようとしています。
私が調べた限りでは、Unreal EngineのC++ではdynamic_cast
よりCast
を使う方が推奨されているように感じたため、Cast
を用いて実装しようとしています。
Castのドキュメントの通りに実装したつもりではあるのですが、エラーが発生する行をどのように書き換えればよいのか、ご教授いただけると幸いです。
回答1件
良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
2022/06/18 04:42
2022/06/18 10:41