「C++の色々配慮してめんどくさい感じは好きだけど、実務になったらメモリ安全性とか考えて今後Rustに変わっていくんかな」
「うだうだ言ってないで仕事で必要なのをやればいいんだよ、趣味なら好きなのやればいい」
っていうスレ。
前スレ: 結局C++とRustってどっちが良いの?
https://mevius.5ch.net/test/read.cgi/tech/1677286186/
探検
結局C++とRustってどっちが良いの? 2traits
■ このスレッドは過去ログ倉庫に格納されています
2023/04/02(日) 00:42:57.53ID:W9/nq+tL
2023/04/02(日) 02:38:05.99ID:Xkdfgrgv
テンプレに入れといていいよ
2023/04/02(日) 02:43:43.18ID:zOLTjxu5
C++は確実に滅びる
各種安全性が保証されているRust製と穴を多発してきたC++製
企業や国自治体がどちらを選ぶか明らか
いずれ要件にも入るだろう
各種安全性が保証されているRust製と穴を多発してきたC++製
企業や国自治体がどちらを選ぶか明らか
いずれ要件にも入るだろう
2023/04/02(日) 03:06:04.77ID:WdMf4Ye5
>>5
おいおい!処理を切り替えること一般をディスパッチ
その実装をディスパッチャと言うんだよ
ifやmatchなどの条件分岐はやっていることはディスパッチャだよ
実行時にやっているから動的ディスパッチ
仮想関数テーブルを介した関数の呼び出しの切り替えも動的ディスパッチ
一方で関数のオーバーロードによる切り替えは
コンパイル時に決まるので静的ディスパッチと言う
おいおい!処理を切り替えること一般をディスパッチ
その実装をディスパッチャと言うんだよ
ifやmatchなどの条件分岐はやっていることはディスパッチャだよ
実行時にやっているから動的ディスパッチ
仮想関数テーブルを介した関数の呼び出しの切り替えも動的ディスパッチ
一方で関数のオーバーロードによる切り替えは
コンパイル時に決まるので静的ディスパッチと言う
2023/04/02(日) 03:40:43.33ID:IfuIFZxt
GoogleとMicrosoftで脆弱性の70%がメモリー管理バグに起因のためRust採用
https://xtech.nikkei.com/atcl/nxt/column/18/00692/042700054/
Rustは、プログラムに必要なメモリーの確保や解放に関連するバグが生じない「メモリー安全」が保証されたプログラミング言語である。
それに対してこれまでのOS開発に使われてきたC/C++は「大規模な開発においてメモリー安全なコードを記述することがほぼ不可能」
(Microsoftのブログ「We need a safer systems programming language」出典)だという。
GoogleによればAndroidに存在した深刻なセキュリティー脆弱性の70%近くがメモリー安全に関するバグに起因するという。
同様にMicrosoftも、同社製品に存在したセキュリティー脆弱性の70%がメモリー安全に関するバグに起因すると述べている。
C/C++を使う限りセキュリティー脆弱性を根絶するのは不可能と考えて、Rustを採用するに至ったというわけだ。
https://xtech.nikkei.com/atcl/nxt/column/18/00692/042700054/
Rustは、プログラムに必要なメモリーの確保や解放に関連するバグが生じない「メモリー安全」が保証されたプログラミング言語である。
それに対してこれまでのOS開発に使われてきたC/C++は「大規模な開発においてメモリー安全なコードを記述することがほぼ不可能」
(Microsoftのブログ「We need a safer systems programming language」出典)だという。
GoogleによればAndroidに存在した深刻なセキュリティー脆弱性の70%近くがメモリー安全に関するバグに起因するという。
同様にMicrosoftも、同社製品に存在したセキュリティー脆弱性の70%がメモリー安全に関するバグに起因すると述べている。
C/C++を使う限りセキュリティー脆弱性を根絶するのは不可能と考えて、Rustを採用するに至ったというわけだ。
2023/04/02(日) 06:32:11.07ID:kYGqyW3R
>「業界談義」、愚痴はプログラマー板へどうぞ。
板ルールが読めない池沼
そしてプログラム書けずにドヤ顔で役に立たない長文書くバカ
板ルールが読めない池沼
そしてプログラム書けずにドヤ顔で役に立たない長文書くバカ
2023/04/02(日) 06:39:50.05ID:M90rTQGQ
大手IT企業は揃ってC++ではダメだと判断してRustへ移行しつつあるのに
底辺は真逆でRustはダメでC++に拘るのはなぜ?
底辺は真逆でRustはダメでC++に拘るのはなぜ?
2023/04/02(日) 06:53:36.16ID:W9/nq+tL
あっちにもスレあったんだけどね、あんま流行ってなかったから
マの問題じゃない、言語がイイんだ! ってgdgdやるのがいいみたいだ
Google&MS「バグの70%はC/C++。Rustにする」
https://medaka.5ch.net/test/read.cgi/prog/1619943288/
ほんとにマの問題なら、>>1 で終わってしまうw
マの問題じゃない、言語がイイんだ! ってgdgdやるのがいいみたいだ
Google&MS「バグの70%はC/C++。Rustにする」
https://medaka.5ch.net/test/read.cgi/prog/1619943288/
ほんとにマの問題なら、>>1 で終わってしまうw
2023/04/02(日) 06:54:05.31ID:W9/nq+tL
2023/04/02(日) 08:05:56.68ID:O/tjJbYW
2023/04/02(日) 08:13:05.31ID:W9/nq+tL
Rustは難しくない。そうだろ?
大手が本格的に移行しはじめてからでも、全然遅かねえんだよ
ま、C++を捨てられないってのは、このスレだけの内緒だけどな!
大手が本格的に移行しはじめてからでも、全然遅かねえんだよ
ま、C++を捨てられないってのは、このスレだけの内緒だけどな!
2023/04/02(日) 08:16:48.61ID:W9/nq+tL
Rustに移行ってのは、採用された程度じゃ移行じゃない
APIに、Rustの所有権・マルチスレッド関係のシグネチャが付くようになって、ようやっとだ
その日はくる
そして、Rustの独占は揺らぐ
APIに、Rustの所有権・マルチスレッド関係のシグネチャが付くようになって、ようやっとだ
その日はくる
そして、Rustの独占は揺らぐ
2023/04/02(日) 08:25:23.82ID:W9/nq+tL
C++を捨てたんなら、no_mangle とか、まさか、extern "C" とかいう呪詛を唱えてないよな?
移行っていう以上、そういうの要らないんだよ
C++が、こっちから適合してやっからよ
移行っていう以上、そういうの要らないんだよ
C++が、こっちから適合してやっからよ
2023/04/02(日) 10:39:13.92ID:Xkdfgrgv
複おじはね、承認に飢えた構ってちゃんなのよ
この紛うことなきクソスレを隔離スレ化して構い続けてあげれば、他スレの被害を最小限にできるって寸法よ
こんなクソゴミスレを存続させる意義はここにある
君たちも>>5は知識として覚えておいて、そこらでそれっぽい書き込みを見ても一切反応しちゃいけないぞ
この紛うことなきクソスレを隔離スレ化して構い続けてあげれば、他スレの被害を最小限にできるって寸法よ
こんなクソゴミスレを存続させる意義はここにある
君たちも>>5は知識として覚えておいて、そこらでそれっぽい書き込みを見ても一切反応しちゃいけないぞ
2023/04/02(日) 10:48:26.80ID:W9/nq+tL
ディスパッチはディスパッチだろ、くらいに思ってたのに、
Rustの優位性を説明するキーワードのひとつなのね
もうちょっと勉強してからそのへんはゆっくり読む罠 ついていけん
C++を捨てろって言われると猛然と怒るけど、
じゃRust使わないのかって聞かれると、いやじゃんじゃん使うよ必要ならって答える
それがC++er
Rustの優位性を説明するキーワードのひとつなのね
もうちょっと勉強してからそのへんはゆっくり読む罠 ついていけん
C++を捨てろって言われると猛然と怒るけど、
じゃRust使わないのかって聞かれると、いやじゃんじゃん使うよ必要ならって答える
それがC++er
20デフォルトの名無しさん
2023/04/02(日) 11:14:49.29ID:3BWJUO+j >>5
よくまとまってる
よくまとまってる
21デフォルトの名無しさん
2023/04/02(日) 12:12:13.50ID:nLGbG+/r >>19
>Rustの優位性を説明するキーワードのひとつなのね
静的ディスパッチ/動的ディスパッチの違いは
基本としておさえておくべきポイントというだけで
Rustに明確な優位性があるわけではないよ
vtableの持ち方の違いもトレードオフだから
何に重きを置くかによってRustがやや有利な場合もあればC++が有利な場合もある
>Rustの優位性を説明するキーワードのひとつなのね
静的ディスパッチ/動的ディスパッチの違いは
基本としておさえておくべきポイントというだけで
Rustに明確な優位性があるわけではないよ
vtableの持ち方の違いもトレードオフだから
何に重きを置くかによってRustがやや有利な場合もあればC++が有利な場合もある
22デフォルトの名無しさん
2023/04/02(日) 12:30:32.66ID:hC5sLbbp しゃぶれよ
2023/04/02(日) 13:40:35.10ID:Ky8sq4kq
>前スレ
>Rust派は、Rustなら、必ず・全部安全
doubt
>Rust派は、Rustなら、必ず・全部安全
doubt
2023/04/02(日) 14:12:33.01ID:W9/nq+tL
そりゃC++よりは安全だろうけど
少なくともメモリ管理において、Rustの安全性って、数学的に保証されるものなの?
少なくともメモリ管理において、Rustの安全性って、数学的に保証されるものなの?
25デフォルトの名無しさん
2023/04/02(日) 14:28:31.37ID:PHqZc/RR >>24
定義次第だと思うのでメモリ管理以外で「安全性が数学的に保証されてる」と思ってる例をいくつかあげてみて
定義次第だと思うのでメモリ管理以外で「安全性が数学的に保証されてる」と思ってる例をいくつかあげてみて
2023/04/02(日) 14:50:01.38ID:W9/nq+tL
あ、わかった
Rustがsafeといっても、定義次第なんだね
Rustがsafeといっても、定義次第なんだね
2023/04/02(日) 15:21:53.12ID:guRaVpcO
ちんぽこ
2023/04/02(日) 16:06:16.39ID:ZsGOmlxy
キチガイの巣
29デフォルトの名無しさん
2023/04/02(日) 16:26:16.23ID:7EJ8Bgwe >>26
Rustに関係なく「安全かどうか」は定義次第だからね
Rustに関係なく「安全かどうか」は定義次第だからね
2023/04/02(日) 16:48:24.56ID:W9/nq+tL
ていうか、こっちに定義を聞いてこられても困るんだよね
この定義において、Rustはここまで安全、って言ってもらえると、それを遵守するんだから
この定義において、Rustはここまで安全、って言ってもらえると、それを遵守するんだから
31デフォルトの名無しさん
2023/04/02(日) 16:59:55.82ID:asGxfFqy2023/04/02(日) 17:13:06.13ID:W9/nq+tL
数学的に安全性が保証されてるっぽい何かがあるんだろ? ってなことだよ
根拠もなしに、安全か? そりゃC++よりマシだろうけどさw
根拠もなしに、安全か? そりゃC++よりマシだろうけどさw
2023/04/02(日) 21:00:51.01ID:WdMf4Ye5
そんな難しいことを考えなくても
Rustの所有権システムをC++で体験したければ
インスタンスを作るときに
必ず常にmake_uniqueかmake_sharedするようにすれば
だいたい同じ振る舞いになる
安全性は保証される
Rustの所有権システムをC++で体験したければ
インスタンスを作るときに
必ず常にmake_uniqueかmake_sharedするようにすれば
だいたい同じ振る舞いになる
安全性は保証される
2023/04/02(日) 23:31:24.96ID:Xbrx8QgA
C++ってstd::move(x)した後にx使うとコンパイラに怒られるの?
35デフォルトの名無しさん
2023/04/03(月) 00:26:35.43ID:CRVbAO5a コンパイラは怒らないから
静的解析ツールが必要だね
静的解析ツールが必要だね
2023/04/03(月) 04:38:42.03ID:rltHNDRD
C++はコンパイルとは別に静的解析とデバッグ解析が不可欠だからな
Rustはコンパイラがメモリ安全からデータ競合安全まで保証してくれるのでかなり楽
Rustはコンパイラがメモリ安全からデータ競合安全まで保証してくれるのでかなり楽
37デフォルトの名無しさん
2023/04/03(月) 09:30:27.97ID:sPhWZLZN デバッグ解析てなんやねん
コンパイラがやる静的解析の範囲が広いというだけでRustでも静的解析・動的解析は基本不可欠
clippy, rustfix, rust-fmt, cargo-expand辺りは静的解析ツールの一種
コンパイラがやる静的解析の範囲が広いというだけでRustでも静的解析・動的解析は基本不可欠
clippy, rustfix, rust-fmt, cargo-expand辺りは静的解析ツールの一種
38デフォルトの名無しさん
2023/04/03(月) 09:40:57.30ID:GW2UDfFX まともにrustかけるやつって例外なくc++もかけるけどな。
2023/04/03(月) 09:51:01.03ID:7c0W6U8J
でも、C++よりマシな程度では?
2023/04/03(月) 09:52:16.72ID:7c0W6U8J
2023/04/03(月) 10:19:52.71ID:efbJG7yX
「安全」に描こうとするとコピーが大量に発生するのか
2023/04/03(月) 10:22:17.10ID:efbJG7yX
>>31
Rust は(限られた範囲において)常に安全ω(キリっ
Rust は(限られた範囲において)常に安全ω(キリっ
43デフォルトの名無しさん
2023/04/03(月) 10:26:17.83ID:ni15ogEW C++er あるあるシリーズ
#![allow(unused)]
... = hoge().unwrap;
... = hoge()?;
let p: *const [u8] = &fuga;
unsafe {}
#![allow(unused)]
... = hoge().unwrap;
... = hoge()?;
let p: *const [u8] = &fuga;
unsafe {}
2023/04/03(月) 10:27:57.18ID:L3onvvn+
>>37
C++のスマポの使い方をミスっても公式支援がない話でそれらは的外れかなあ
clippyはRust公式リント
rustfixはRustコンパイラのよる提案の適用
rust-fmtは清書
cargo-expandはマクロ展開
C++のスマポの使い方をミスっても公式支援がない話でそれらは的外れかなあ
clippyはRust公式リント
rustfixはRustコンパイラのよる提案の適用
rust-fmtは清書
cargo-expandはマクロ展開
2023/04/03(月) 10:39:12.43ID:ux7WrBep
2023/04/03(月) 10:55:27.74ID:GLvgK6Zq
なおグラフ
2023/04/03(月) 11:15:28.73ID:UoFPeH1S
48デフォルトの名無しさん
2023/04/03(月) 11:47:36.10ID:GWsnSys+2023/04/03(月) 11:50:42.61ID:UoFPeH1S
2023/04/03(月) 12:08:48.70ID:NHUpObDP
2023/04/03(月) 12:15:40.80ID:UoFPeH1S
2023/04/03(月) 12:16:08.17ID:GLvgK6Zq
the Bookを捨てよ、町へ出よう
2023/04/03(月) 12:24:08.54ID:GLvgK6Zq
Rustの宣伝文だけ読んで他言語を知った気になり
Rustの宣伝文を5chにコピペし続けるだけの人生
Rustの宣伝文を5chにコピペし続けるだけの人生
2023/04/03(月) 12:47:23.54ID:UoFPeH1S
2023/04/03(月) 12:54:34.40ID:xtNXRsCH
2023/04/03(月) 13:50:16.07ID:QA6IHCRk
「数学的」連呼してる割には名前に直交性が無いな
.iter
.indexed_iter
.iter_mut
.indexed_iter_mut
.outer_iter
.outer_iter_mut
not exist .indexed_iter_mut
not exist .enumerate_iter_mut
.enumerate_pixels_mut
いちいち覚えてられるか?
.iter
.indexed_iter
.iter_mut
.indexed_iter_mut
.outer_iter
.outer_iter_mut
not exist .indexed_iter_mut
not exist .enumerate_iter_mut
.enumerate_pixels_mut
いちいち覚えてられるか?
2023/04/03(月) 13:54:52.87ID:QA6IHCRk
違ったので訂正
誤 not exist .indexed_iter_mut
正 not exist .indexed_outer_iter_mut
誤 not exist .indexed_iter_mut
正 not exist .indexed_outer_iter_mut
2023/04/03(月) 14:01:30.74ID:7c0W6U8J
あ。「数学的」連呼してたのは、C++側の俺
そして、あんまり、数学的な安全の論拠ってのはみつからない
ありゃあC++で真似するんだよ 手本にしない手はない
そして、あんまり、数学的な安全の論拠ってのはみつからない
ありゃあC++で真似するんだよ 手本にしない手はない
2023/04/03(月) 14:08:12.25ID:rB8gWfoY
>>56
各ライブラリで命名方針が異なるのは、プログラミング言語の比較の話と全く無関係じゃね?
あと、enumerate_pixels_mutをその提案のenumerate_iter_mutとしてしまったら、肝心なピクセルが消えて意味不明じゃん。
各ライブラリで命名方針が異なるのは、プログラミング言語の比較の話と全く無関係じゃね?
あと、enumerate_pixels_mutをその提案のenumerate_iter_mutとしてしまったら、肝心なピクセルが消えて意味不明じゃん。
2023/04/03(月) 14:14:18.67ID:7c0W6U8J
雑談としては、そのへんも「きれい」になってくれるとありがたいね
これはC++も同様
これはC++も同様
2023/04/03(月) 14:28:24.56ID:gdFj9/S+
直交性の意味がよく分からなかった
index_of(先頭から検索)とlast_index_of(末尾から検索)は直交性がないことになるのかな
標準と非標準の関係で考えると自然な命名だと思うけど
index_of(先頭から検索)とlast_index_of(末尾から検索)は直交性がないことになるのかな
標準と非標準の関係で考えると自然な命名だと思うけど
2023/04/03(月) 14:29:57.73ID:GLvgK6Zq
63デフォルトの名無しさん
2023/04/03(月) 15:09:57.20ID:dlyOKSPs >>62
どの辺を指して数学的と言ってるのか謎
どの辺を指して数学的と言ってるのか謎
2023/04/03(月) 15:39:46.50ID:7c0W6U8J
2023/04/03(月) 15:53:08.55ID:ZjD7pm8v
>>62
unsafeを使ってsafeなインタフェースを作っている部分、すなわち人間が安全性を保証しなければならなかった部分を、数学的に保証する試みがあるのか
unsafeを使ってsafeなインタフェースを作っている部分、すなわち人間が安全性を保証しなければならなかった部分を、数学的に保証する試みがあるのか
2023/04/03(月) 15:56:35.02ID:7c0W6U8J
そこも気を付けて読んでみるけど、
unsafeを撲滅しようと思ったら、SoCのサポートが必要ってのが今のところの俺の考え
そう考えないと、C++も永遠にsafeに成れないことになってしまう
unsafe部分にバグが、っていう古い記事が出てきたりするんだけど、
どうせ、safeでいいものまでunsafeでいっぱい書いたんでしょ、と思ってる
これは個人の推測
unsafeを撲滅しようと思ったら、SoCのサポートが必要ってのが今のところの俺の考え
そう考えないと、C++も永遠にsafeに成れないことになってしまう
unsafe部分にバグが、っていう古い記事が出てきたりするんだけど、
どうせ、safeでいいものまでunsafeでいっぱい書いたんでしょ、と思ってる
これは個人の推測
67デフォルトの名無しさん
2023/04/03(月) 16:08:23.20ID:sTax+JD2 >>65
数学的とは一言も書いてなくね?
数学的とは一言も書いてなくね?
2023/04/03(月) 16:11:48.88ID:7c0W6U8J
学術的とか、論理的とか、適当に読み替えてくれよ、俺がうまく言えなかったのがいけなかっただけ
69デフォルトの名無しさん
2023/04/03(月) 17:01:07.96ID:dGJwzzow >>61
last_index_ofはlast occurrenceのindexを示すだけで検索方向を示すものでは無いと思う
last_index_ofはlast occurrenceのindexを示すだけで検索方向を示すものでは無いと思う
2023/04/03(月) 17:14:21.15ID:WoF7SnyS
2023/04/03(月) 17:34:14.59ID:G+jJ6S+V
2023/04/04(火) 09:48:59.96ID:1EmRTN+L
前スレを読んだ感想だが
Rustのvtableは1つに合成されているのがへーだった
ちなみにC++は各基底毎にある
https://i.stack.imgur.com/rK5xx.jpg
https://i.stack.imgur.com/TJ1k6.jpg
Rustのvtableは1つに合成されているのがへーだった
ちなみにC++は各基底毎にある
https://i.stack.imgur.com/rK5xx.jpg
https://i.stack.imgur.com/TJ1k6.jpg
73デフォルトの名無しさん
2023/04/04(火) 09:57:45.04ID:WkDAaTBe >>72
それ読み間違えてるぞ
それ読み間違えてるぞ
74デフォルトの名無しさん
2023/04/04(火) 10:05:22.65ID:wMBLnZ/K 複オジメソッド発動
2023/04/04(火) 10:08:21.90ID:2Z9CTS/R
2023/04/04(火) 10:10:16.77ID:E2o8nJSl
まあ、ちゃんとキャストできるようにできてるというか
77デフォルトの名無しさん
2023/04/04(火) 12:04:39.20ID:4IMp+S71 何が間違ってるかは教えてあげない
2023/04/04(火) 13:10:25.87ID:I8oGyAYF
プッ
2023/04/04(火) 13:20:50.92ID:E2o8nJSl
C++を知ってしまったことかな。。
80デフォルトの名無しさん
2023/04/04(火) 14:47:11.16ID:NrMPyXSZ 日本人はtraitとtoiletの区別がつきにくい
2023/04/04(火) 17:52:01.37ID:N9reXox+
もうGPTがどの言語でも変換してくれる時代
82デフォルトの名無しさん
2023/04/04(火) 20:58:36.08ID:N+qd6aMB rustのcrateはdependenciesで入るのが多過ぎるし大き過ぎるわ
要らないものまで無理やり入れさせられてる気分になる
要らないものまで無理やり入れさせられてる気分になる
83デフォルトの名無しさん
2023/04/04(火) 21:26:41.04ID:0Yk0tShF 依存crate問題が最大の弱点ではある
2023/04/04(火) 21:32:45.26ID:nnLBpR2L
node_modulesとどっちがヤバいかな?
2023/04/05(水) 15:18:19.83ID:MSpbiXL9
node_modules は -g で解決
86デフォルトの名無しさん
2023/04/05(水) 15:43:59.95ID:lwqbYnd2 dependenciesに5個程度指定するだけで
依存crateが100個近くになるのも珍しくない
nodeとは比べ物にならないくらいひどいよ
依存crateが100個近くになるのも珍しくない
nodeとは比べ物にならないくらいひどいよ
87デフォルトの名無しさん
2023/04/05(水) 15:47:38.76ID:lwqbYnd2 しかもビルドすると500~1GB超の容量使うからノートの内蔵SSDを使ってると残す必要のないのは積極的にcleanしないときつい
2023/04/05(水) 15:49:19.66ID:46QkPZge
そんだけファイルの読み書きするなら
IOの速度に影響されそうだね
IOの速度に影響されそうだね
2023/04/05(水) 15:55:51.93ID:/Rqy2YcF
マイコンでも大人気と聞いたんだが、どうなってるんだ
90デフォルトの名無しさん
2023/04/05(水) 17:07:48.56ID:rkWYEusf 容量使うのはインクリメンタルビルド用の中間生成物で配置するものとは違うよ
2023/04/05(水) 17:26:43.23ID:/Rqy2YcF
C++もPCHファイルを生成するとアホほどでかかったりするが…世の中うまくいかんな
2023/04/06(木) 14:03:59.93ID:sb5+vAgP
チンチン汁出るッ
2023/04/06(木) 15:09:52.63ID:jULmAo6w
C++なら明示的インスタンス化を使おうよ
使っている人をほぼ見ないけども
使っている人をほぼ見ないけども
2023/04/06(木) 15:52:41.86ID:gPnWA/2r
こう書いておけば、インスタンス化した関数に、こんな風に溶け込むだろうな、とか思って書いてたりはする
時間があれば、生成コードを汗で確認する
びっくりするほどスパゲッティな出力になってて、びっくりすることがある まあ実力不足を痛感する瞬間
時間があれば、生成コードを汗で確認する
びっくりするほどスパゲッティな出力になってて、びっくりすることがある まあ実力不足を痛感する瞬間
95デフォルトの名無しさん
2023/04/06(木) 18:12:44.37ID:un5AwFJZ Cargo はゴミ
2023/04/06(木) 20:01:46.11ID:W1iP43mr
ぺたんこおっぱい
ぽっこりおなか
つるつるわれめ
ぽっこりおなか
つるつるわれめ
2023/04/06(木) 23:30:16.81ID:ZIKOL9hh
>>94
クラスも構造体も使わずに書いているの?
クラスも構造体も使わずに書いているの?
2023/04/06(木) 23:35:22.20ID:gPnWA/2r
ああ、callで呼ぶようなものはなんでも関数って言っちゃうねつい
99デフォルトの名無しさん
2023/04/07(金) 00:17:10.35ID:u3jMtx4p https://www.publickey1.jp/blog/22/ccarbon_languagegooglec.html
こちらはC++との互換性を重視しているらしい
Rustはこの先生きのこれるかな?
こちらはC++との互換性を重視しているらしい
Rustはこの先生きのこれるかな?
100デフォルトの名無しさん
2023/04/07(金) 00:31:06.23ID:D4MDBVlu そこにこれ載ってた
[RFC] Lifetime annotations for C++
https://discourse.llvm.org/t/61377
Rustは勝利した しかし、Rustはその勝利を独占できない
[RFC] Lifetime annotations for C++
https://discourse.llvm.org/t/61377
Rustは勝利した しかし、Rustはその勝利を独占できない
101デフォルトの名無しさん
2023/04/07(金) 03:11:25.56ID:ZE3zxB0C >>100
こう書いてあるね
提案された有効期間注釈に基づく静的分析では、C++ コード内のすべてのメモリ安全性の問題をキャッチすることはできません。
具体的には、すべての時間メモリの安全性のバグ (反復子の無効化によって引き起こされるバグなど) をキャッチすることはできず、
もちろん、有効期間注釈は空間メモリの安全性 (たとえば、C スタイルの配列の範囲外のインデックス作成) には役立ちません。
詳細な議論については、以下のRustとの比較を参照してください。
こう書いてあるね
提案された有効期間注釈に基づく静的分析では、C++ コード内のすべてのメモリ安全性の問題をキャッチすることはできません。
具体的には、すべての時間メモリの安全性のバグ (反復子の無効化によって引き起こされるバグなど) をキャッチすることはできず、
もちろん、有効期間注釈は空間メモリの安全性 (たとえば、C スタイルの配列の範囲外のインデックス作成) には役立ちません。
詳細な議論については、以下のRustとの比較を参照してください。
102デフォルトの名無しさん
2023/04/07(金) 03:22:57.43ID:ZE3zxB0C >>99
Rustを使えるならばRustを使ったほうが良いと明記されているね
ソース
Carbon公式FAQ
https://github.com/carbon-language/carbon-lang/blob/trunk/docs/project/faq.md#why-not-rust
Why not Rust?
If you can use Rust, ignore Carbon.
If you want to use Rust, and it is technically and economically viable for your project, you should use Rust.
In fact, if you can use Rust or any other established programming language, you should.
Carbon is for organizations and projects that heavily depend on C++
Rustを使えるならばRustを使ったほうが良いと明記されているね
ソース
Carbon公式FAQ
https://github.com/carbon-language/carbon-lang/blob/trunk/docs/project/faq.md#why-not-rust
Why not Rust?
If you can use Rust, ignore Carbon.
If you want to use Rust, and it is technically and economically viable for your project, you should use Rust.
In fact, if you can use Rust or any other established programming language, you should.
Carbon is for organizations and projects that heavily depend on C++
103デフォルトの名無しさん
2023/04/07(金) 03:34:46.32ID:D4MDBVlu104デフォルトの名無しさん
2023/04/07(金) 15:30:28.71ID:xzLK1vX9 動きました。ほんとうにありがとうございました。
use std::ffi::c_void;
#[link(name = "user32")]
#[no_mangle]
extern "stdcall" {
fn MessageBoxA(hWnd: *const c_void, lpMsg: *const u8, lpTitle: *const u8, flg: u64) -> u64;
}
fn main() {
let msg: &[u8] = &vec![65u8, 66u8, 67u8, 0u8];
let lpmsg: *const u8 = &msg[0];
let ttl: &[u8] = &vec![97u8, 98u8, 99u8, 0u8];
let lpttl: *const u8 = &ttl[0];
println!("{}", unsafe { MessageBoxA(0 as *const c_void, lpmsg, lpttl, 3) });
}
use std::ffi::c_void;
#[link(name = "user32")]
#[no_mangle]
extern "stdcall" {
fn MessageBoxA(hWnd: *const c_void, lpMsg: *const u8, lpTitle: *const u8, flg: u64) -> u64;
}
fn main() {
let msg: &[u8] = &vec![65u8, 66u8, 67u8, 0u8];
let lpmsg: *const u8 = &msg[0];
let ttl: &[u8] = &vec![97u8, 98u8, 99u8, 0u8];
let lpttl: *const u8 = &ttl[0];
println!("{}", unsafe { MessageBoxA(0 as *const c_void, lpmsg, lpttl, 3) });
}
105デフォルトの名無しさん
2023/04/07(金) 16:14:09.83ID:VHO1ouQx >>103
知らないなら書くなよアホが
知らないなら書くなよアホが
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【無言】中国怒らせた高市首相→1週間だんまり、国民に実害も説明なし 中国問題を避けてスルー… ★2 [BFU★]
- 【いちご高騰】ヤマザキのクリスマスケーキ、いちご無し販売 [おっさん友の会★]
- 止まらぬ「日本売り」 高市財政への懸念で進む金利上昇と円安 [蚤の市★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★10 [樽悶★]
- 「ドラゴンボール」初の全世界キャラクター人気投票が開幕!212キャラからナンバーワンが決まる!! [ひかり★]
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… ★6 [BFU★]
- 中国「高市が謝罪しなければ、ハニトラに引っかかった日本の政治家を公表する」 [804169411]
- 【悲報】「チー牛みたいな形の命を許容するくらいなら、私は差別主義者で構わない」4万いいね🐮 [559744496]
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 【画像】貴殿らはこの「カツ丼&ラーメンセット1300円税込」にいくら払える? [743999204]
- 【35🌸専】なんG さくらみこ桃鉄配信実況スレ🏡【ホロライブ▶】
- 【悲報】高市政権、ホタテ輸出の支援検討 [834922174]
