我想要一個函數使用MemWriter來寫入一些字節,然後返回一個指向緩衝區的指針。在這種情況下,我很難理解如何使用生命週期。我如何使下面的代碼工作,我應該閱讀什麼來彌補我在這方面的知識差距?Rust MemWriter返回指向Buffer的指針
struct Request<T: Encodable> {
id: i16,
e: T
}
impl <T: Encodable> Request<T> {
fn serialize<'s>(&'s self) -> io::IoResult<&'s Vec<u8>> {
let mut writer = io::MemWriter::new();
try!(writer.write_be_i16(0 as i16));
let buf = writer.unwrap();
let size = buf.len();
let result: io::IoResult<&Vec<u8>> = Ok(&buf);
result
}
}
'Request'類型的定義是什麼? – huon 2014-09-04 08:52:30
你不使用'self'這個方法嗎? – Levans 2014-09-04 08:55:33
我已編輯將其中的定義。 – Upio 2014-09-04 08:55:36