Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/advance/smart-pointer/deref.md
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,7 @@ fn main() {
}
```

对于 `s1`,我们通过两次 `Deref` 将 `&str` 类型的值赋给了它(**赋值操作需要手动解引用**);而对于 `s2`,我们在其上直接调用方法 `to_string`,实际上 `MyBox` 并没有实现该方法,能调用 `to_string`,完全是因为编译器对 `MyBox` 应用了 `Deref` 的结果(**方法调用会自动解引用**)。
对于 `s1`,我们通过两次 `Deref` 将 `&str` 类型的值赋给了它(**赋值操作需要手动解引用**);而对于 `s2`,我们在其上直接调用方法 `to_string`,实际上 `MyBox` 并没有实现该方法,能调用 `to_string`,完全是因为编译器对 `MyBox` 应用了 `Deref`(**方法调用会自动解引用**)。

## Deref 规则总结

Expand Down