検索

phrase: max: clip:
target: order:
Results of 11 - 20 of about 29 for let (0.032 sec.)
ライフタイムシステムの限界 8255
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... &Self { &*self } fn share(&self) {} } fn main() { let mut foo = Foo; let loan = foo.mutate_and_share(); ... 後のムーブや、借用、`foo`の変更を防ぎます) <anon>:10 let loan = foo.mutate_and_share(); ^~~ <anon>:12:2: 12 ... ここで終了しています) <anon>:8 fn main() { <anon>:9 let mut foo = Foo; <anon>:10 let loan = foo.mutate_and ... lf } fn share<'a>(&'a self) {} } fn main() { 'b: { let mut foo: Foo = Foo; 'c: { let loan: &'c Foo = Foo: ...
https://man.plustar.jp/rust/nomicon/lifetime-mismatch.html - [similar]
例外安全性 8206
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... コードの方が 良いでしょう。 bubble_up(heap, index): let elem = heap[index] while index != 0 && elem < heap ... つの段階に分割することです。 bubble_up(heap, index): let end_index = index; while end_index != 0 && heap[en ... [parent(end_index)]: end_index = parent(end_index) let elem = heap[index] while index != end_index: heap[ ... こんな感じだったでしょう。 bubble_up(heap, index): let elem = heap[index] try: while index != 0 && elemen ...
https://man.plustar.jp/rust/nomicon/exception-safety.html - [similar]
型強制 8108
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... e に対する型 U への型強制サイトは以下の通りです。 let 文、 static、 const: let x: U = e 関数に対する引数 ... } 構造体リテラル: Foo { some_u: e } 配列リテラル: let x: [U; 10] = [e, ..] タプルリテラル: let x: (U, .. ... ) = (e, ..) ブロックの最後の式: let x: U = { ..; e } トレイトをマッチさせる場合、型強制 ... t: X) {} impl<'a> Trait for &'a i32 {} fn main() { let t: &mut i32 = &mut 0; foo(t); } <anon>:10:5: 10:8 ...
https://man.plustar.jp/rust/nomicon/coercions.html - [similar]
アロケーティング 7880
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... 片を考えてみましょう。 #![allow(unused)] fn main() { let x = &mut 0; let y = &mut 0; *x *= 7; *y *= 3; } も ... きさとアラインメントを手動で指定する必要があります。 let align = mem::align_of::<T>(); let elem_size = mem: ... :size_of::<T>(); let (new_cap, ptr) = if self.cap == 0 { let ptr = heap ... 出来ます。 // ですからチェックする必要はありません。 let new_cap = self.cap * 2; // 同様に、前にアロケートし ...
https://man.plustar.jp/rust/nomicon/vec-alloc.html - [similar]
デアロケーティング 7880
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... T> { fn drop(&mut self) { if self.cap != 0 { while let Some(_) = self.pop() { } let align = mem::align_of ... ::<T>(); let elem_size = mem::size_of::<T>(); let num_bytes = e ... ケーティング , ライフタイム , メモリ , self , Drop , let , pop , 実装 , cap , コード ...
https://man.plustar.jp/rust/nomicon/vec-dealloc.html - [similar]
競合 7831
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... omic::{AtomicUsize, Ordering}; use std::sync::Arc; let data = vec![1, 2, 3, 4]; // Arc にすることで、 他の ... ead::spawn が // ライフタイムを必要とするからです! let idx = Arc::new(AtomicUsize::new(0)); let other_idx ... omic::{AtomicUsize, Ordering}; use std::sync::Arc; let data = vec![1, 2, 3, 4]; let idx = Arc::new(Atomic ... Usize::new(0)); let other_idx = idx.clone(); // `move` によって other_ ...
https://man.plustar.jp/rust/nomicon/races.html - [similar]
リーク 7391
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... あります! 安心! それでは以下の例を考えてみましょう。 let mut vec = vec![Box::new(0); 4]; { // ドレインを開始 ... します。 vec にはもうアクセスできません let mut drainer = vec.drain(..); // 2 つの値を引き出し ... allocate がこのように動作したらよいと思いませんか? let ptr = heap::allocate::<RcBox<T>>(); ptr::write(ptr ... 確実に終了させます。 使用法は以下のような感じです。 let mut data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; { let ...
https://man.plustar.jp/rust/nomicon/leaking.html - [similar]
コンストラクタ 7195
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... bool, } enum Bar { X(u32), Y(bool), } struct Unit; let foo = Foo { a: 0, b: 1, c: false }; let bar = Bar: ... :X(0); let empty = Unit; } 以上。これ以外の型のインスタンスを ... , ライフタイム , Default , 意味 , コピー , 提供 , let ...
https://man.plustar.jp/rust/nomicon/constructors.html - [similar]
所有権とライフタイム 7146
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... n as_str(data: &u32) -> &str { // 文字列を生成する let s = format!("{}", data); // しまった! この関数内で ... 複雑だからです。 例えばこのコードを見てみましょう。 let mut data = vec![1, 2, 3]; // 内部データの参照を取る ... let x = &data[0]; // しまった! `push` によって `data` ... ード , ライフタイム , コンパイラ , スコープ , 証明 , let , ポインタ ...
https://man.plustar.jp/rust/nomicon/ownership.html - [similar]
リファレンス 7015
はじめに 1. 安全と危険のご紹介 1.1. 安全と危険の相互作用 1.2. Unsafe と連携する 2. データレイアウ ... しすることができます。 #![allow(unused)] fn main() { let x = &mut (1, 2); { // x のフィールドを又借りする l ... ドの又貸しが可能です。 #![allow(unused)] fn main() { let x = &mut (1, 2); { // x を 2 つの互いに素なフィール ... ドに又貸しする let y = &mut x.0; let z = &mut x.1; // y と z は生存し ...
https://man.plustar.jp/rust/nomicon/references.html - [similar]
PREV 1 2 3 NEXT