[過去ログ] Rust part24 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
141: 2024/06/15(土)04:55:57.02 ID:ao0/TxVC(1) AAS
>>138
WebGPUの参照実装であるwgpuを知らんのか。
ライブラリ使う側のIFはだいぶsafeだよ。
まぁ、バックエンドは結局、valkanやOpenGLになるけど。
191: 2024/06/16(日)10:13:30.02 ID:R4/urzCg(3/3) AAS
>>173
ほんそれ
338: 2024/06/24(月)18:41:27.02 ID:jX1oxSab(3/5) AAS
>>334
>y=2*(x-2)(x-3)+1*(x-1)(x-3)+3*(x-1)(x-2);
間違ったわ。
多分、
y=1*(x-2)(x-3)-1*(x-1)(x-3)+3/2*(x-1)(x-2);
だと思うわ。
理由は大体分かると思うけど。
602(1): 2024/07/06(土)22:06:51.02 ID:PIuhFLFS(1) AAS
Rustってオブジェクト指向言語ではないということですが、それでも困ることはないんですか?
これが最後の言語だ!とRustって名付けたんですか?
673(2): 2024/07/09(火)12:57:46.02 ID:aoAam1/W(1/5) AAS
>>672
自分でそれを書いておいて理解できていないのかよ
そこに明記されてるようにTもSもオブジェクトを持つ具体型についての話だ
Rustのtraitは具体型ではないため関係ないぞ
そしてtraitを実装する各型の間にはサブタイプの関係はないためそこも対象とならない
そこを理解できずに「RustのTraitは力不足」とデタラメを吹聴するのは恥ずかしい
721(3): 2024/07/10(水)13:29:52.02 ID:kPG9kWdt(1/2) AAS
>>701
そのやり方がなぜ悪いのか理解できませんので、教えてください。
例えば、C++だと、以下の様にするのも別に悪いやり方ではないような
気がするのですが。
class Number {・・・};
Number add(Number &a, Number &b);
Number mul(Number &a, Number &b);
class Integer : public Number {・・・};
class Rational : public Number {・・・};
845: 2024/07/14(日)07:39:51.02 ID:iqWqiKXK(3/10) AAS
未知のIteratorであっても重複コードを書くことなく自動的にこのfoldメソッドが使える
848(1): 2024/07/14(日)10:13:20.02 ID:aq5pPuoi(1) AAS
>>847
nextはイテレーターを一つ進めるもの、foldやreduceはイテレーターに対して畳み込みを行うもの
例えば「配列内の全ての数値を足し合わせる」とか「全ての数値を掛け算する」「配列内の文字列を全て連結する」いった操作を行うものだよ
この類のものは他の言語でも使われるし、簡潔なコードを書けるようになるから知っておくと良いよ
配列等のコンテナに対して一般に map, filter, reduce と呼ばれる操作があって、そのうちreduceは「要素を畳み込んで1つの値にする」もの
畳み込む方法を関数で渡すもので、概念的には [1, 2, 3].reduce(add) や [1, 2, 3].reduce(multiply) のような形になる
渡す関数は関数のほかクロージャ (言語によってはラムダ式とも) も使える
こんな感じに抽象化するとfor文を使わなくて済むし、何をやってるかが明確になる
976: 2024/07/26(金)00:25:09.02 ID:/65SSmn2(1/2) AAS
OnceLockからLazyLockへ移行すると
変数宣言と初期化関数が離れていた可読性の問題が解決するとともに
例えばget_or_initを一箇所にするために一つ関数を用意したりするなどしていた手間も省けるようになるね
そして何よりも最大のメリットはDerefによりアクセスできる利便性
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.040s