◎正当な理由による書き込みの削除について:      生島英之とみられる方へ:

C/C++のソースをRustへ全力で置き換えるスレ


動画、画像抽出 || この掲示板へ 類似スレ 掲示板一覧 人気スレ 動画人気順

このスレへの固定リンク: http://5chb.net/r/tech/1681777958/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

1デフォルトの名無しさん (アウアウウー Saef-/q5i)
2023/04/18(火) 09:32:38.92ID:sxhvE7iUa
!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512
みなさまから持ち込まれたご不要になりました古Cソース古C++コード(質問含む)をRustへ全力で置き換えるスレです
■関連スレ
結局C++とRustってどっちが良いの?2traits
http://2chb.net/r/tech/1680363777/
Rust part20
http://2chb.net/r/tech/1677771928/
プログラミング言語 Rust 4
http://2chb.net/r/tech/1514107621/
その他は >>2-

■ワッチョイ
スレ建て時、1~3行目に
!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512
をコピー

Rustの優位性とやらを全力で語りやがれ
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
2デフォルトの名無しさん (アウアウウー Sacb-/q5i)
2023/04/18(火) 09:37:22.98ID:sxhvE7iUa
■関連
C/C++の宿題片付けます 170代目
http://2chb.net/r/tech/1456911928/
C/C++の宿題片付けます 170代目
http://2chb.net/r/tech/1456647534/
Rust(unsafe) vs C
http://2chb.net/r/tech/1646151892/
競プロにおいてのRust
http://2chb.net/r/tech/1663352373/
そんなにRust,Rust言うならゲームエンジンでも
http://2chb.net/r/tech/1678619820/
Rustレスバトル会場
http://2chb.net/r/tech/1657382429/
Rustアンチスレ
http://2chb.net/r/tech/1509028624/
排斥すべきゴミ言語 C++ Rust 他
http://2chb.net/r/tech/1643696741/
Rust part19
http://2chb.net/r/tech/1674007100/
Rust part6
http://2chb.net/r/tech/1532697692/
3デフォルトの名無しさん (アウアウウー Sacb-/q5i)
2023/04/18(火) 09:48:41.62ID:sxhvE7iUa
数行で収まらないソースは以下を適当に使ってURLを晒してください
https://paiza.io/projects/QiBg8xTHsfFaXapaNAIdvQ
https://ideone.com/
https://wandbox.org/
https://techiedelight.com/compiler/
https://dpaste.com/
https://pastebin.com/
4デフォルトの名無しさん (アウアウウー Sacb-/q5i)
2023/04/18(火) 10:50:11.14ID:sxhvE7iUa
本家
https://play.rust-lang.org/

(メモ) >>3-4 で挙げたうちの
play.rust-lang.org と wandbox.org では使っていない import で warning 出る
どちらも default が #[warn(unused_imports)]
不要な use を消すか #![allow(unused)] を入れる等適当に
5デフォルトの名無しさん (アウアウウー Sacb-/q5i)
2023/04/18(火) 10:50:48.56ID:sxhvE7iUa
興味がある人はブラウザでどうなるか試してみよう

safeでもメモリはぶっ壊せる
https://speakerdeck.com/moratorium08/rustfalseunsound-hole-issue-number-25860woli-jie-suru
6デフォルトの名無しさん (ワッチョイ a75f-iKPJ)
2023/04/18(火) 12:25:27.86ID:NALS/zAj0
ワッチョイ付きじゃ例の人は来ないから隔離スレとして機能しないぞ
7デフォルトの名無しさん (スフッ Sd7f-l2LK)
2023/04/18(火) 13:42:02.96ID:7GOdztOAd
おながいしまつ
https://ideone.com/L9TZlR
8デフォルトの名無しさん (アウアウウー Sacb-Naft)
2023/04/18(火) 15:42:16.79ID:sxhvE7iUa
>>7
https://dpaste.com/4WBBERMTB
9デフォルトの名無しさん (アウアウウー Sacb-/q5i)
2023/04/19(水) 01:42:14.55ID:rDAf/S/Pa
もうちょっとスッキリ
https://play.rust-lang.org/?version=stable&mode=release&edition=2021&gist=c4e09ff30cf2769ee28c5e0cfa2e2e1e
dependencies 描かなくて良い play.rust-lang.org ありがたや
10デフォルトの名無しさん (スププ Sd7f-l2LK)
2023/04/19(水) 03:35:41.37ID:5n0sPtaFd
おながいしまつ
https://ideone.com/iPWHR0
11デフォルトの名無しさん (スフッ Sd7f-l2LK)
2023/04/20(木) 07:32:25.61ID:4QbBG9add
まだでつか?
12デフォルトの名無しさん (アウアウウー Sa21-1cZQ)
2023/04/22(土) 05:13:45.40ID:ve/ll5uRa
ライフタイム付き再帰構造体を再帰関数で回してlifetimeのvarianceで苦しむまでがボローチェッカチュートリアルです
13デフォルトの名無しさん (アウウィフ FF21-1cZQ)
2023/04/23(日) 10:52:30.36ID:XxfCyR3vF
制約は安全性を高めるためなんだろうけど率直に言ってウザいからな
他人に書かせるならRustを選ぶかもしれんがw
自分で書くものにはRustは不要かな
14デフォルトの名無しさん (アウウィフ FF21-1cZQ)
2023/04/23(日) 18:43:21.25ID:y593Lq73F
>>10
勉強になった
https://play.rust-lang.org/?version=stable&mode=release&edition=2021&gist=8d0504c0ffbfe198b0107e49e814315b
https://gist.github.com/rust-play/8d0504c0ffbfe198b0107e49e814315b
15デフォルトの名無しさん (アウウィフ FF21-YWDm)
2023/04/28(金) 10:49:45.13ID:pksuSfeeF
多目的トレイト
16デフォルトの名無しさん (スププ Sdbf-Dpku)
2023/05/02(火) 14:47:07.64ID:03fZg/+od
おながいしまつ
https://pastebin.com/k1WxrDhN
17デフォルトの名無しさん (ワッチョイ 9f79-zzYQ)
2023/05/02(火) 19:44:51.40ID:CHSyAGjU0
C++toRustトランスレーター作ろうとは思わないの
18デフォルトの名無しさん (スププ Sdbf-Dpku)
2023/05/04(木) 14:29:32.75ID:lyoWn3h4d
ただのトランスパイラならbindgenで足りる
どうせunsafeだらけになるし
MFCみたいな糞wrapperになるのが目に見えてる
APIからRust化しないと意味無いのでは
19デフォルトの名無しさん (オイコラミネオ MM6b-fitb)
2023/05/05(金) 00:00:57.72ID:tbrjl4OGM
何でも置き換えればいいのかな?
例えばtouchのような対象も小さく即終わるコマンドとかも書き換えたほうがいいのか?
20デフォルトの名無しさん (オイコラミネオ MM6b-fitb)
2023/05/05(金) 00:02:42.59ID:tbrjl4OGM
書き替えたら歴史に名が残るので書き換えると言うレベルじゃないかと
それに気が付いて勝手にどんどん書き換えても正式に採用してもらえるのかは謎
21デフォルトの名無しさん (ワッチョイ 1279-y4C+)
2023/05/06(土) 03:39:03.02ID:l5Xh2UOq0
それより自演失敗してますよ
22デフォルトの名無しさん (ワイーワ2 FF6a-ouLR)
2023/05/08(月) 11:49:41.64ID:PotcPEgCF
cc とか bindgen とか試したが
確かにそこそこ使えるが微妙に完成度は低いと感じた
指定するオプションが足りないだけなのか
c の source は比較的完成度高くて
cpp の source は色々残念な結果になるイメージ
23デフォルトの名無しさん (ワッチョイ 169b-/J4k)
2023/05/08(月) 12:56:13.49ID:imilCHLn0
Cはlinuxカーネルにも入るし真面目にやらんといかんけど、C++とはまだお遊びフェイズってことだろ。
C++erはまだまだRust馬鹿にしてるし。
24デフォルトの名無しさん (スプッッ Sd52-8wHc)
2023/05/08(月) 15:04:33.73ID:NYRttg47d
結局Rust移行には無軌道な俺俺ラッパーライブラリに振り回される覚悟が要るしなぁ
あまり気が進まないのは理解できるでしょ
25デフォルトの名無しさん (アウアウウー Sac3-ouLR)
2023/05/09(火) 10:11:05.41ID:MyUREp4Fa
新規でRustは良いと思うけど
元々C/C++のプロジェクトをRustにわざわざ入れ替えるのは
unsafe使いまくりで生ポ回避しただけのRust風C/C++コードにしかならない
気に入らないからRustらしいRustコードに少しでも近付けようとすると
結局元のコードより読み難くなるので無駄な努力に感じる
既存のC/C++資産は仮に負の資産であっても下手に触らずそのまま使う方が吉
本気で入れ替えたいなら理想を言えばAPIから再設計した方が良い
ところがRustのためのRust純正Crateになると結局C/C++の人らは近付かなくなるな
26デフォルトの名無しさん (アウウィフ FFc3-KIRb)
2023/05/11(木) 10:19:47.83ID:tfz6F7+EF
bindgen::Builder に対して
.generate_inline_functions(true)
を付けてやると
bindings.rs への変換で再現性はチョット上がったが
結局 link でエラー出るわ orz
cc で -fno-default-inline で link 出来るようだが効率悪そう
(inline だから当たり前だな)
27デフォルトの名無しさん (ワッチョイ 335f-GJof)
2023/05/15(月) 02:39:55.46ID:s5edYhaR0
完全に思い付きで言うけどltoしてみれば?
28デフォルトの名無しさん (アウアウウー Sacd-MrxJ)
2024/03/27(水) 10:07:59.15ID:afJGV/5Aa
結局のところ
Box::new(hoge) じゃなくて
Arc::pin(hoge) ってことだよな
29デフォルトの名無しさん (アウアウウー Sacd-MrxJ)
2024/03/27(水) 10:09:11.07ID:afJGV/5Aa
>>22
C++とRustの相性は最悪
30デフォルトの名無しさん (ワッチョイ 8228-vSrI)
2024/03/28(木) 00:09:26.54ID:61/ABBlz0
無駄な努力だな。。
移行できるレベルで所有権がはっきりしてるコードならそのままのコードで十分運用できるだろ。
31デフォルトの名無しさん (ワッチョイ 6107-Re1+)
2024/03/28(木) 15:38:46.41ID:160/Pdit0
発注元が言語指定してくるから
政府の勧告に基づき、今後の置き換え案件はC/C++は排除するって言ってきたりするようになるんだろう

C++はともかく、Cはトランスレータができるだろうから
そして、トランスレータの知見から、safe C/C++が育っていくだろう
32デフォルトの名無しさん (オッペケ Sr79-M0x+)
2024/03/28(木) 17:04:34.56ID:25qMudWUr
美味しい仕事じゃね
ミシュラだのもついでに窓からポイ
33デフォルトの名無しさん (オッペケ Sr79-M0x+)
2024/03/28(木) 17:05:32.14ID:25qMudWUr
return は一箇所にしろ~
省略出来るぞガハハ
34デフォルトの名無しさん (ワッチョイ b25f-lBRV)
2024/04/08(月) 19:14:28.45ID:tTCpytrL0
rustでlongjumpってどうやんの?
35デフォルトの名無しさん (オッペケ Sr5f-zzFp)
2024/04/08(月) 21:06:20.57ID:6B+IO5Hjr
libcにないのかい
36デフォルトの名無しさん (アウアウウー Sabb-IS2W)
2024/04/09(火) 11:30:43.03ID:kb2+15Kqa
毎日一日一回必ず遅くなる
cargo build
cargo test
糞仕様ω
37デフォルトの名無しさん (スププ Sd02-aQbW)
2024/04/09(火) 11:53:29.89ID:KoSn7rCkd
数万行にも及ぶC/C++をRustに書き換えるのは狂気の沙汰
38デフォルトの名無しさん (ワッチョイ 7f07-OINQ)
2024/04/09(火) 16:27:34.77ID:ubWOnQ1+0
手で直してエンバグしてたら、C/C++ free にする意味がなくなる
自動変換ソリューション一択、実用化待ちだと思う

それが定着したら、最初から「そういう風に」C/C++を書くのも定着してくると思う
39デフォルトの名無しさん (アウアウウー Sa83-TxeL)
2024/04/21(日) 15:50:31.20ID:aDRU4soda
Rust リファクタリングしてるときに
trait 境界が変わって
あれ?ってなることが多いな
40デフォルトの名無しさん (アウアウエー Sa4a-WcQO)
2025/03/23(日) 07:56:32.96ID:jrseZUS+a
let bits = vec![false; 32];
これでbitsのサイズが4バイトになってくれるような仕組みはRustにありますか?

lud20250330121145
このスレへの固定リンク: http://5chb.net/r/tech/1681777958/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

TOPへ TOPへ  

このエントリをはてなブックマークに追加現在登録者数177 ブックマークへ


全掲示板一覧 この掲示板へ 人気スレ | Youtube 動画 >50 >100 >200 >300 >500 >1000枚 新着画像

 ↓「C/C++のソースをRustへ全力で置き換えるスレ 」を見た人も見ています:
JR型運行の列車を国鉄型で置き換えてみるスレ
気持ち悪いコピペの主語をネトウヨに置き換えるスレ
どんな質問にも全力で答えるスレ
大工が全力で回答するスレ 16軒目
大工が全力で回答するスレ 22軒目
服を自慢する、全力で褒めるスレ
フフガーが全力で質問に答えるスレ
アシュリンを全力で応援するスレ
MHRiseの質問に全力で答えるスレ
MHRiseの質問に全力で答えるスレ Part41
MHRiseの質問に全力で答えるスレ Part11
厨房ワイがみんなの学校を全力で褒めるスレ
MHRiseの質問に全力で答えるスレ Part35
MHRiseの質問に全力で答えるスレ Part13
MHRiseの質問に全力で答えるスレ Part29
MHRiseの質問に全力で答えるスレ Part4
MHRiseの質問に全力で答えるスレ Part28
MHRiseの質問に全力で答えるスレ Part34
MHRiseの質問に全力で答えるスレ Part7
MHRiseの質問に全力で答えるスレ Part31
MHRiseの質問に全力で答えるスレ Part2
MHRiseの質問に全力で答えるスレ Part10
MHRiseの質問に全力で答えるスレ Part25
MHRiseの質問に全力で答えるスレ Part20
MHRiseの質問に全力で答えるスレ Part15
MHRiseの質問に全力で答えるスレ Part5
MHRiseの質問に全力で答えるスレ Part16
MHRiseの質問に全力で答えるスレ Part42
MHRiseの質問に全力で答えるスレ Part30
MHRiseの質問に全力で答えるスレ Part34
MHRiseの質問に全力で答えるスレ Part44
SKYRIMの質問に全力で答えるスレ Part140
立花岳志さんを全力で応援するスレ Part58
SKYRIMの質問に全力で答えるスレ Part144
SKYRIMの質問に全力で答えるスレ Part146
ブルーベリーとラズベリーを語呂合わせの良い別の物に置き換える
【PSO2】初心者の質問に全力で議論するスレ
前島亜美が囲碁界にきたら全力で応援するスレ
【帝国】ドジャースを全力で応援するスレ【大谷翔平】
【雑談】バイクの質問に全力で答えるスレ ★2
前の人が書いたきのこを全力で否定するスレ 2本目
★ガーシーを全力で応援するスレ 地下売上議論26817★
Fate/Grand Order どんな質問にも全力で優しく答えるスレ Lv.25
Fate/Grand Order どんな質問にも全力で優しく答えるスレ Lv.3
【GWだし】安価で指定されたものを全力で探してうpするスレ
【GWだし】安価で指定されたものを全力で探してうpするスレ
Fate/Grand Order どんな質問にも全力で優しく答えるスレ Lv.1
Fate/Grand Order どんな質問にも全力で優しく答えるスレ Lv.8
Fate/Grand Order どんな質問にも全力で優しく答えるスレ Lv.95
Fate/Grand Order どんな質問にも全力で優しく答えるスレ Lv.59
Fate/Grand Order どんな質問にも全力で優しく答えるスレ Lv.212
Fate/Grand Order どんな質問にも全力で優しく答えるスレ Lv.249
【PS4】ARK: Survival Evolvedの質問に全力で答えるスレ part.7
MHWの質問に全力で答えるスレ90
MHWの質問に全力で答えるスレ118
MHWの質問に全力で答えるスレ79
MHWの質問に全力で答えるスレ5
いちいち言葉に置き換えるから悩む
MHWの質問に全力で答えるスレ65
MHWの質問に全力で答えるスレ39
MHWの質問に全力で答えるスレ23
MHWの質問に全力で答えるスレ58
MHWの質問に全力で答えるスレ27
13:29:00 up 62 days, 14:27, 0 users, load average: 10.46, 10.14, 10.12

in 0.079920053482056 sec @0.079920053482056@0b7 on 061902