Avatar
Avatar
omochimetaru
Swiftの引数はたとえCopyableだったとしても、consuming, shared, inoutの3つのどれかしかないです
omochimetaru 2/6/2025 12:25 AM
sharedじゃないやborrowingだ
12:25 AM
func foo(a: consuming Int) { take(&a) } func take(_ x: inout Int) {}
12:25 AM
↑これコンパイルできたわ
12:25 AM
consumingってLValueだったんだ・・・w
12:26 AM
func foo(a: Int) { // ERROR: Cannot pass immutable value as inout argument: 'a' is a 'let' constant take(&a) } func take(_ x: inout Int) {}
12:26 AM
未指定はエラーになるのでRValueらしい