中の技術日誌ブログ

C#とC++/CLIと
VBと.NETとWindowsで戯れる
 

目次

Blog 利用状況

ニュース

自己紹介

東京でソフトウェアエンジニアをやっています。
お仕事大募集中です。
記事執筆や、講師依頼とかでも何でもどうぞ(*^_^*)
似顔絵 MSMVPロゴ
MSMVP Visual C# Since 2004/04-2013/03

記事カテゴリ

書庫

日記カテゴリ

00-整理

01-MSMVP

dynamic_cast(C++/CLI) as(C#)は速い (嘘)

ただとにかくキャストだけしまくってオペコードのcastclassと、isinstを試したところ

static_cast 0
safe_cast 4600くらい (C#の標準キャスト)
dynamic_Cast 0(C#のas)

とはいえ3999999999コンだけの回数まわしてやっと出てくる数字ですが・・・

投稿日時 : 2006年3月27日 1:33

コメントを追加

# re: dynamic_cast(C++/CLI) as(C#)は速い 2006/03/27 16:07 Lady.BUG

IL化やJITの段階の最適化で消えるようなコードだった、とかいうオチはないですよね?
castclassに負けるこたないですがisinstはそこそこのコストがかかるもので、FxCop のパフォーマンスルールに「連続したisinstの使用」ってのがあるぐらいです。
まあ、FxCopは、

if (x is Foo)
{
Foo xFoo = x as Foo;
:
}
else if (x is Bar)
{
Bar xBar = x as Bar;
:
}

ってかんじの処理を検出するぐらいですけど。

# re: dynamic_cast(C++/CLI) as(C#)は速い 2006/03/27 21:18 中博俊

消えてましたorz
ええ、もうすっかり。(--;

タイトル
名前
URL
コメント