問題タブ [rust]
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.
naming - なぜ「錆」と呼ばれるのですか?
Rustプログラミング言語が「Rust」と呼ばれるのはなぜですか?
誰がその名前を付けたのか、またその理由について何か知られていることはありますか? (私は正の関連性を思いつくのに苦労しています)。
multidimensional-array - さび、segfaultingの多次元ベクトル?
C#では、このようなことができます
後で次のようなものでタイル要素にアクセスしますLocation[2, 40, 20]
Rust で同様のタイプの構造を作成しようとしていますが、構文が少し奇妙です。私はこれを思いつきましたが、大きなベクトルサイズでセグメンテーション違反を起こしました (スタックを使い果たしましたか?):
私はこれについて間違っていますか?それは非常にゆっくりと実行され、大きなサイズでセグメンテーション違反が発生しました。おそらく、タイルの 3 次元空間 (レイヤー、幅、高さ) を格納するためのより良い方法はありますか?
編集:これは、これらのタイルを可変にしようとする前です
rust - ベクトルへの借用参照の有効期間とそれに含まれる借用ポインタの関係は?
編集者注: このコード例は、Rust 1.0 より前のバージョンのものであり、構文的に有効な Rust 1.0 コードではありません。このコードの更新されたバージョンではさまざまなエラーが発生しますが、回答には依然として貴重な情報が含まれています。
Rust 0.6でこのコードを試しました:
この型シグネチャの意味は次のとおりだと思います。
これは、ベクトル内のポインターが (読み取り専用) ベクトル自体ほど長く存続しない可能性があることを暗示しているようです。これは可能ですか?
これが問題ないことをコンパイラに伝えるために、追加の注釈を付ける必要がありますか?
同様に、所有されたポインターのベクトルはどうでしょうか? 例えば
繰り返しますが、少なくともリスト全体を借用している限り、ベクトルの要素へのポインタを借用できると期待しています。
コンテキストとして、私の最初の問題は、借用したポイントのリストを所有するポインターのリストで拡張しようとすることでした:
計画は次のとおりでした: 借用したすべてのポインターを含む拡張リストを作成し、それを使用してから、拡張リストを解放し、含まれている文字列を含む所有ポインターの元のリストを解放します。
rust - Rusti を機能させるにはどうすればよいですか?
昨日、Rust 0.6 をインストールしました。チュートリアルを読み、コーディングを始めることに興奮しています。インストールの結果、マシンにrustiについての言及はありません。ソースをダウンロードして自分でビルドする必要がありますか? 私はWindowsマシンを使用しています。ありがとう。
編集: ここで wiki で答えを見つけました。そこで質問なのですが、共有できる Windows 用のrusti のバイナリを構築した人はいますか?
rust - 共有状態を持ついくつかの管理されたクロージャ?
Expat XML パーサー用の Rust ラッパーを実装しようとしています。start_element と end_element のコールバックをラップすると、次のように単純なケース (たとえば、XML 要素をカウントするだけ) では問題なく動作します。
シンプルなマネージド クロージャを handlers() に渡して、@mut uint 値を更新させることができます。
現在、コールバック全体で現在の XPath を維持したいのですが、問題が発生しています。
コンパイラは、一意のベクトル xpath が xpath_start_handler クロージャに移動され、xpath_end_closure でアクセスできないことを示しています。
だから私の質問は、多くの管理された閉鎖間で変更可能な状態を維持するための最良の方法は何ですか?
rust - カスタム Rust オペレータを作成できますか?
標準の算術演算子をオーバーライドする特性を実装できることはわかっています。カスタム演算子をオーバーロードする独自の特性を作成することはできますか? 演算子を定義するための Haskell のシステムを本当に楽しむようになりました。
rust - さび: fmt の ToStr を定義する
fmt!("%?", obj)
オブジェクトのメソッドを呼び出して、結果をフォーマットしたいと考えています。ToStr
とRepr
トレイトを実装しようとしましたが、どちらもうまくいかないようでした。ここに私のテストコードがあります:
それは印刷します:
私はそれが印刷されることを期待しています:
Rust0.6を使用しています。
rust - 状態への一意のポインター + Rust のコールバック
状態を変更するコールバックと一緒に構造体に状態をバンドルしようとしています。マネージ ポインターを使用すると正常に動作します。
次に、この構造を別のタスクに送信したいので、どこでも一意のポインターに切り替える必要があります。私はそれを機能させることができません:「エラー:廃止された構文:constまたは変更可能な所有ポインター」
助言がありますか?タスク間でコールバックを送信するより良い方法はありますか?
arrays - Rust での配列/ベクトルの型キャスト
Rust で、あるタイプの配列またはベクトルを別のタイプに変換する慣用的な方法は何でしょうか? 望む効果は
しかし、スカラー型キャストと同様に、より簡潔な方法で同じことが達成できるかどうかはわかりません。
Rust のマニュアルやリファレンスで手がかりを見つけるのに失敗しているようです。ティア。
rust - 別のさびジェネリック演習
Rust で Monad のような特性を実装しようとしています。ほとんどの場合、楽しみと型システムに慣れるためです。このreddit ディスカッションで説明されているように、「より高い種類」が不足しているため、Monad トレイトを完全に実装することはできないと確信していますが、どれだけ近づけるかを見たいと思っています。何らかの理由で、このコードをコンパイルできません。そうあるべきだと思われます。誰かが理由を説明できますか?