我注意到,给定一个P<SomeStruct>
,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);
}
哪些语言功能允许我访问绑定id
上的字段struct_pointer
?取消引用?强迫?通过查看文档,是否有任何方法可以告诉您这种事情是否有效P
?
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句