問題タブ [rust-obsolete]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
757 参照

rust - 共有ボックス ptr を介してアクセスするときに構造体フィールドを変更可能にするにはどうすればよいですか?

編集者注: このコードは Rust 1.0 より前のバージョンのものであり、構文的または意味的に有効な Rust 1.0 コードではありません。

そのため、学習演習として共有ボックス ポインターを調べます。純粋にアカデミックなエクササイズ。

このコンパイラ エラーが発生することに少し驚いています。

何を与える?

所有ボックス ポインターに切り替えると、エラーはなくなります。これはマネージ ポインター アクセスに対するある種の制限ですか?

0 投票する
1 に答える
5762 参照

arrays - 固定長配列の比較

編集者注: この質問は Rust 1.0 より前に出されたもので、もはや有効ではない構文を使用しています。さらに、この質問の特定の問題は、Rust 1.0 では発生しなくなりました。

唯一のフィールドである固定幅のバイト配列を含む構造体があります。forからのトレイトの実装std::cmpは簡単だと思うかもしれませんが、派生はうまくいきません:

ドキュメントは、Eq が固定幅配列ではなく&[]andに対して実装されていることを示唆しています。~[]手動による強制も&[]機能しません:

Rustリファレンスマニュアルのこの行はそれを説明するかもしれません:

一定サイズのベクトルを生成する式は、不定サイズのベクトルを期待するコンテキストでは評価できません。一定サイズのベクトルの内容を不定サイズの別個のベクトルにコピーする必要があります。

動機は定かではありませんが、長さの保存に関係があるのではないかと思います。

&[]とにかく、コピーせずに の実装を使用して 2 つの固定長配列を比較することは可能ですか?

0 投票する
2 に答える
24084 参照

rust - 別のモジュールで使用される場合の宣言されていない型またはモジュール `std` の使用

次のコードがあります。

これをコンパイルするとエラーが発生します。

ただし、内部モジュールを削除して、それ自体に含まれるコードをコンパイルすると問題なく動作します。

ここで何が欠けていますか?モジュールが別のファイルにある場合、同じエラーが発生します。

main.rs

a.rs

0 投票する
2 に答える
1789 参照

rust - int の基本入力の取得

Rustのドキュメントをナビゲートしてioを説明するケースを見つけることができないように見えることに非常に驚いています.誰かが基本的なioを使用してユーザー入力を整数に変換する方法を説明してもらえますか? そして、その呪われたドキュメントのどこで io の詳細を見つけることができるでしょうか? ありがとう

0 投票する
1 に答える
2528 参照

enums - ポリモーフィズムを使用しようとすると、「エラー: 構造定義では特性境界は許可されていません」

編集者注: この質問は、Rust 1.0 および特定の機能が実装される前に行われました。コードは現状のままで動作します。

RustでボードゲームのAIを書いています。ゲームには複数のルールセットがあり、ルール ロジックをボード レイアウトから分離したいと考えています (現在は混在しています)。Ruby のような言語では、別々のルール セットに同じインターフェイスを実装させます。Rustでは、トレイトを使用し、Board使用したいルールセットでパラメーター化することを考えました(例:Board<Rules1>::new())。

この特性を実装するオブジェクトを構造体 ( などBoard) に保存することはできません。Rulesをに変えることはできenumますが、列挙型のメンバーに対して個別の実装を定義できないため、少し面倒に見えます。パターン マッチングを使用するとうまくいきますが、構造体軸ではなく関数軸に沿って機能が分割されます。これは私が一緒に暮らさなければならないものですか、それとも何らかの方法がありますか?

次のコードは、私が使用したいものです。

次のエラーが発生します。

0 投票する
1 に答える
3694 参照

rust - 所有している文字列を所有している vec に収集します。

以下を使用して、さびの文字列の vec に収集しようとしています。

次のエラーが発生します: expected std::iter::FromIterator<&str>, but found std::iter::FromIterator<~str> (str ストレージが異なります: expected &but found ~)

タイプヒントを使用しようとしましたが、成功しませんでした