我正在将一个C ++构造函数移植到Rust。 a
,b
和opt
是Some_class
的字段:
Some_class(int a_arg, int b_arg, int opt_arg = 0)
:a(a_arg),b(b_arg),opt(opt_arg){}
我知道Rust没有默认参数,所以我在impl Some_class
中编写了Rust构造函数,如:
fn new(a_arg: i64, b_arg: i64) -> Some_class {
Some_class(a: a_arg, b: b_arg, 0)
}
fn new(a_arg: i64, b_arg: i64, opt_arg: i64) -> Some_class {
Some_class(a: a_arg, b: b_arg, opt: opt_arg)
}
写完之后,我意识到Rust没有函数重载。有没有办法让函数参数可选,或模仿函数重载?