rust - 在 Rust 构造函数中取得所有权并借用
问题描述
在那里,我对生锈还是很陌生。我遇到了一个问题,我需要获得一个变量的所有权,同时创建一个不同的变量,借用新拥有的变量。有没有一种优雅的方式来做这样的事情?
struct Object<'a> {
owned: SecondObject,
borrowed: Wrapper<&'a SecondObject>
}
impl<'a> Object<'a> {
pub fn new(second: SecondObject) -> Object<'a> {
Object {
owned: second,
borrowed: Wrapper::new(&second); // This line breaks
}
}
}
我想我尝试了所有我能想到的变体,但实际移动总是先完成,所以我无法获得引用,或者有对原始变量的引用,所以它根本无法移动。owned
当然,在它实际创建之前我不能参考。
感谢您提供任何提示,如果这可以实现,或者是否有不同的方法可以使这项工作。
解决方案
推荐阅读
- mysql - 如何处理 org.hibernate.exception.ConstraintViolationException,我使用 try catch 但它不起作用
- javascript - HTML 登录页面在页面源代码中显示凭据
- javascript - 用于 URL 的 JavaScript 字符串 .replace
- ios - 为 iOS 构建后的 Ionic 应用程序链接器错误
- angular - 在一个值中使用多个 validators.pattern
- android - 使用android导航组件从第一个活动导航到第二个活动时如何关闭/完成第一个活动
- accessibility - 单击按钮时出现蓝色阴影
- html - 如何在 wordpress 中自定义侧边栏并在其中添加可折叠菜单?
- java - Knime中多行的正则表达式
- react-native - 为 React Native 和 styled-components 配置 stylelint