t_wの輪郭

Feedlyでフォローするボタン
  • 文章の部品として使った場合、文章の不調和が顕になる。
    • 論理的つながりの不和があらかじめわかるという利点としてみることもできる
    • 文章の書き方の不一致が生じる
      • 「です、ます」、「だ、である」の不一致
      • 段落で字下げをするかしないかの不一致
      • 見出しの粒度の不一致
  • 変化する

 プログラミングでたまに言われる、「関数として共通化するよりコピペしたほうが良い」みたいなところがある。早すぎる抽象化だ。

 描写埋め込みが強力であると見ているが、関数継承同様に「大いなる力には、大いなる責任が伴う」ということだろうか。

fn main() {
    let reference_to_nothing = dangle();
}

fn dangle() -> &String {
    let s = String::from("hello");

    &s
}
error[E0106]: missing lifetime specifier
 --> src\main.rs:5:16
  |
5 | fn dangle() -> &String {
  |                ^ expected named lifetime parameter
  |
  = help: this function's return type contains a borrowed value, but there is no value for it to be borrowed from
help: consider using the `'static` lifetime
  |
5 | fn dangle() -> &'static String {
  |                ~~~~~~~~

関連関数

2022/2/18 1:50:00

implブロック内のselfを引数に取らない関数。
Javastaticメソッドっぽさがある。

struct Rectangle {width:f64, height:f64}

impl Rectangle {
    fn square(size: f64) -> Rectangle {                             //関連関数
        Rectangle { width: size, height: size }
    }
}

fn main() {
    let rect = Rectangle::square(32.);
    println!("width: {}, height: {}", rect.width, rect.height);     //width: 32, height: 32
}