[過去ログ]
プログラミング言語 Rust 4 (1002レス)
プログラミング言語 Rust 4 http://mevius.5ch.net/test/read.cgi/tech/1507970294/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
602: デフォルトの名無しさん [] 2018/01/08(月) 23:59:18.26 ID:y4IOANaR >>575, >>596 Rustは実装にもよるけど vtable はほとんど使わないはずだよ。 「ジェネリックとトレイト境界」を使えば引数に関しては静的ディスパッチが可能。 戻り値のほうは「ジェネリックとトレイト境界」じゃどうにもできないけど、 こっちはTagged Union 使えば大体は何とかなる。 現状、クロージャを返す場合はトレイトオブジェクトを使わざるを得ないけど、 クロージャを返すことって稀だし、そこまで気にするようなことじゃないと思ってる。 Cにはそもそもクロージャ自体が存在しないわけだし。C++でもクロージャは一般的じゃない。 smart pointer に関しても unique_ptr なら遅くはならない。(ほとんど誤差みたいなもの) だって unique_ptr は参照カウンタ使ってないし、Rallの仕組みを使って構造体(スタック)に ポインタを持ってデストラクタで解放を行ってるだけだから、その程度で遅くなるわけがない。 そして、Rustはデフォルトが C++の unique_ptr と同じだからやはり遅くはならないはず。 遅くなるのは内部で参照カウンタを使ってるshared_ptrとweek_ptrの2つ。 Rustの場合は参照カウンタは Rc or Arc として標準ライブラリに用意されてる。 まあ、Rustで Rc or Arc を全く使わずに作るってのはちょっと現実的じゃないけど。 まぁ、自分もそれほど詳しいわけじゃないけど、 vtableとsmart pointer はRustが遅い理由にはならないんじゃないかな。 RustがC, C++ と比べて少し遅い理由は他にあると思うよ。 個人的にはまだコンパイラが成熟してないってのが主な理由だと思ってるけど。 結構いっぱい書いたけど、やっぱり結論としてはC, C++, Rust の速度差は普通に使う分には気にすようなものじゃないと思う。 http://mevius.5ch.net/test/read.cgi/tech/1507970294/602
603: デフォルトの名無しさん [] 2018/01/09(火) 00:07:21.22 ID:vsbSHK2s >>602 訂正 week_ptr × weak_ptr ○ http://mevius.5ch.net/test/read.cgi/tech/1507970294/603
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.037s