Mar*_*ett 5 pointers coercion rust
我注意到,给定 a P<SomeStruct>
,直接在指针上访问 a 的字段SomeStruct
似乎可以工作,但我不确定为什么会这样。例如,此代码按预期编译并工作(打印“1234”):
#![feature(rustc_private)]
extern crate syntax;
use syntax::ptr::P;
struct Baz {
id: String,
}
fn foo() {
let mut struct_pointer: P<Baz> = P(Baz {
id: "1234".to_string(),
});
println!("{}", struct_pointer.id);
}
Run Code Online (Sandbox Code Playgroud)
什么语言功能允许我访问绑定id
上的字段struct_pointer
?取消引用?强迫?有什么方法可以通过查看文档来判断这种事情是否有效P
?
归档时间: |
|
查看次数: |
2944 次 |
最近记录: |