問題タブ [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.
rust - Rustコンパイラにstdからのインポートを解決させる方法は?
mingw32 には Rust 0.6 コンパイラを使用しています。「コア」からインポートする小さなプログラムをコンパイルできますが、「std」からはインポートできません。これは、些細な例と、それをコンパイルする方法を示すトランスクリプトです。
インポートを解決するためにrustc.exeを取得するにはどうすればよいですか?
rust - Rust の共有トレイトへのポインタを借りることはできますか?
借用ポインター (壊れた) に関するチュートリアルから、少し変更しました。
共有ボックスは機能のために自動的に借りられるため、すべて問題ありません。
しかし、トレイトで同じことを行います:
そして、失敗します(コンパイラバージョン0.6):
エラー: 型の不一致: 予期され
&TPoint
たが見つかりました@TPoint
(特性ストレージが異なります: 予期された & が見つかりました @)
これはコンパイラのバグですか? または、借用したポインターは特性に許可されていませんか?
答えが後者なら、それはなぜですか?
rust - ベクトルへの借用参照の有効期間とそれに含まれる借用ポインタの関係は?
編集者注: このコード例は、Rust 1.0 より前のバージョンのものであり、構文的に有効な Rust 1.0 コードではありません。このコードの更新されたバージョンではさまざまなエラーが発生しますが、回答には依然として貴重な情報が含まれています。
Rust 0.6でこのコードを試しました:
この型シグネチャの意味は次のとおりだと思います。
これは、ベクトル内のポインターが (読み取り専用) ベクトル自体ほど長く存続しない可能性があることを暗示しているようです。これは可能ですか?
これが問題ないことをコンパイラに伝えるために、追加の注釈を付ける必要がありますか?
同様に、所有されたポインターのベクトルはどうでしょうか? 例えば
繰り返しますが、少なくともリスト全体を借用している限り、ベクトルの要素へのポインタを借用できると期待しています。
コンテキストとして、私の最初の問題は、借用したポイントのリストを所有するポインターのリストで拡張しようとすることでした:
計画は次のとおりでした: 借用したすべてのポインターを含む拡張リストを作成し、それを使用してから、拡張リストを解放し、含まれている文字列を含む所有ポインターの元のリストを解放します。
rust - 文字列と静的文字列の比較
これが私が試したことの例です。
私も見ましたequiv
が、運が悪いです。TARGET と比較する文字列は、所有されているポインター文字列でなければなりません。
random - Rustで範囲内の乱数を生成するにはどうすればよいですか?
編集者注: このコード例は、Rust 1.0 より前のバージョンのものであり、構文的に有効な Rust 1.0 コードではありません。このコードの更新されたバージョンではさまざまなエラーが発生しますが、回答には依然として貴重な情報が含まれています。
Rust を使用して乱数を生成する方法の次の例に出くわしましたが、機能していないようです。この例は、それが適用される Rust のバージョンを示していないため、古いバージョンであるか、何か間違っている可能性があります。
これをコンパイルしようとすると、次のエラーが発生します。
同じページ (上記) に動作する別の例 (次のような) があります。ただし、適応させることはできますが、私が望んでいることを正確に行うことはできません。
i64
Rust (例: ) を使用して特定の範囲 (例: 0 から n) 内で「単純な」乱数を生成するにはどうすればよいですか?
closures - 関数からクロージャを返す
この質問は、1.0 がリリースされる前の Rust のバージョンに関するものであることに注意してください。
引数で関数に提供されていない限り、関数からクロージャーを返すことは現在不可能であることを正しく理解していますか? これは非常に便利なアプローチです。たとえば、プログラムのさまざまな部分で、同じコード ブロックを別の方法でパラメーター化する必要がある場合などです。現在、コンパイラは当然、次のようなことを許可していません。
クロージャはスタックに確保され、関数から戻ると解放されるため、返すことはできません。
将来的にこれを機能させることは可能ですか?動的サイズの型でこれが可能になると聞きました。
rust - Rustで部分的に移動した値と移動した値に違いはありますか?
現在、Rust マスター (0.10-pre) では、一意のベクターの 1 つの要素を移動し、別の要素を移動しようとすると、コンパイラは文句を言います:
このエラー メッセージは、ベクトル全体を移動した場合とは多少異なります。
なぜ別のメッセージですか?x
最初の例で が「部分的に移動」しただけの場合、 のさまざまな部分を「部分的に移動」する方法はありx
ますか? x
そうでない場合は、感動したとだけ言ってみませんか?
rust - Rust で包含構造体を参照する (およびそのメソッドを呼び出す)
編集者注: このコード例は、Rust 1.0 より前のバージョンのものであり、構文的に有効な Rust 1.0 コードではありません。このコードの更新されたバージョンではさまざまなエラーが生成されますが、回答には依然として貴重な情報が含まれています。
Rust でコンテナー構造を作成しようとしています。その要素には、含まれているコンテナーへの参照も格納されているため、メソッドを呼び出すことができます。私が理解できる限り、これを介して行う必要がありますRc<RefCell<T>>
。これは正しいです?
これまでのところ、次のようなものがあります。
ここで何かが欠けているように感じます。のコンテンツにアクセスするのはRc<RefCell<T>>
本当に難しいですか ( でpoke_container
)? それとも、私は間違った方法で問題に取り組んでいますか?
最後に、アプローチが正しいと仮定すると、フィールドに入力できるようにメソッドを作成するにはどうすればよいですadd
か(フィールドをタイプに変更したと仮定しますか?私が知る限り、別のメソッドを作成することはできません.Container
container
Element
Option<Rc<RefCell<T>>>
Rc
&mut self