4 rust
似乎我无法在 Rust 中调用相同结构的方法,或者我可能不明白某些事情:
struct St1 {
aa: String
}
impl St1 {
pub fn method1() -> String {
//....
method2() //error: unresolved name method2
}
pub fn method2() -> String {
//....
}
}
Run Code Online (Sandbox Code Playgroud)
这是应该的样子吗?
您需要完全限定您正在调用的方法。
struct St1 {
aa: String
}
impl St1 {
pub fn method1() -> String {
St1::method2()
}
pub fn method2() -> String {
unimplemented!()
}
}
Run Code Online (Sandbox Code Playgroud)
如果您的意思是这些方法是实例方法,那么您仍然必须完全限定它们,而是使用self:
struct St1 {
aa: String
}
impl St1 {
pub fn method1(&self) -> String {
self.method2()
}
pub fn method2(&self) -> String {
unimplemented!()
}
}
Run Code Online (Sandbox Code Playgroud)
请注意,Rust 风格是 4 个空格的缩进。
| 归档时间: |
|
| 查看次数: |
2341 次 |
| 最近记录: |