如何在Rust中打印'BdabePublicKey'?

如何在Rust中打印'BdabePublicKey'?,rust,Rust,如何在Rust中打印BdabePublicKey 使用rabe::schemes::bdabe::*; 使用rabe::utils::policy::pest::PolicyLanguage; fn main(){ let(_pk,_msk)=setup(); println!(“结果:{}”,_pk); } 我得到以下错误: println!(“结果:{}”,_pk); |^^^`BdabePublicKey`不能使用默认格式化程序格式化 以下是我的依赖项: [dependencies]

如何在Rust中打印
BdabePublicKey

使用rabe::schemes::bdabe::*;
使用rabe::utils::policy::pest::PolicyLanguage;
fn main(){
let(_pk,_msk)=setup();
println!(“结果:{}”,_pk);
}
我得到以下错误:

println!(“结果:{}”,_pk);
|^^^`BdabePublicKey`不能使用默认格式化程序格式化
以下是我的依赖项:

[dependencies] 
rabe = "0.2.6" 
rand = "0.7" 
rabe-bn = "0.4.10

您可以打印出它的一些字段:

fn print_key(key: BdabePublicKey) {
    println!("_g1: {} _g2: ? _p1: {} _p2: ? _e_gg_y: {}", key._g1, key._p1, key._e_gg_y);
}

您可以尝试将其序列化为json并打印:

fn打印密钥(密钥:&BdabePublicKey){
让json=serde_json::to_string(key).unwrap();
println!(“{}”,json);
}
Cargo.toml
中:

[dependencies]
serde_json = "1.0"

println!({},_pk)
请创建一个显示您遇到的问题的。请注意,“最小”是指如果板条箱不是直接导致问题的,则应忽略板条箱;i、 例如,如果您询问如何打印变量,则不必这样做,但如果您询问如何打印
rabe::which
类型的变量,则应提供您尝试使用的代码及其给出的错误消息。可能
println!(“{:?}”,_pk)
?实际上,没有实现显示或调试。对问题的编辑极大地改进了它。现在,让我问一个澄清的问题:打印一个无法打印的变量意味着什么?我是说,你到底想让它做什么?如果我给你一些代码,它打印了
Meow-Meow-Meow-Meow-Meow-Meow
,你怎么知道这是否正确?线程“main”溢出了它的堆栈错误:进程没有成功退出:
target\debug\hello.exe
(退出代码:0xc0000fd,状态\u stack\u OVERFLOW)不是我所期望的,但是它打印了!!不客气