【发布时间】:2014-06-08 21:22:22
【问题描述】:
我正在开发一个基本的 shell 解释器来熟悉 Rust。在处理用于在 shell 中存储挂起作业的表时,我遇到了以下编译器错误消息:
error: cannot invoke tuple struct constructor with private fields [E0450]
let jobs = job::JobsList(vec![]);
^~~~~~~~~~~~~
我不清楚这里将什么视为私人内容。正如您在下面看到的,这两个结构在我的模块文件中都用pub 标记。那么,秘诀是什么?
mod job {
use std::fmt;
pub struct Job {
jid: isize,
pid: isize,
cmd: String,
}
pub struct JobsList(Vec<Job>);
}
fn main() {
let jobs = job::JobsList(vec![]);
}
【问题讨论】:
标签: rust private tuple-struct