相关疑难解决方法(0)

如何创建一个全局的,可变的单例?

在系统中只创建一个实例的结构创建和使用的最佳方法是什么?是的,这是必要的,它是OpenGL子系统,制作多个副本并将其传递到各处会增加混乱,而不是减轻它.

单身人士需要尽可能高效.似乎不可能在静态区域上存储任意对象,因为它包含Vec带有析构函数的对象.第二个选项是在静态区域存储(不安全)指针,指向堆分配单例.什么是最方便和最安全的方法,同时保持语法简洁.

rust

97
推荐指数
3
解决办法
3万
查看次数

如何使用actix-web的Json类型解决“ serde :: Deserialize的实现不够通用”的问题?

我正在使用actix-web编写服务器:

use actix_web::{post, web, Responder};
use serde::Deserialize;

#[derive(Deserialize)]
struct UserModel<'a, 'b> {
    username: &'a str,
    password: &'b str,
}

#[post("/")]
pub fn register(user_model: web::Json<UserModel>) -> impl Responder {}
Run Code Online (Sandbox Code Playgroud)

编译器给出此错误:

error: implementation of `user::_IMPL_DESERIALIZE_FOR_UserModel::_serde::Deserialize` is not general enough  
  --> src/user.rs:31:1  
   |  
31 | #[post("/")]  
   | ^^^^^^^^^^^^  
   |  
   = note: `user::UserModel<'_, '_>` must implement `user::_IMPL_DESERIALIZE_FOR_UserModel::_serde::Deserialize<'0>`, for any lifetime `'0`  
   = note: but `user::UserModel<'_, '_>` actually implements `user::_IMPL_DESERIALIZE_FOR_UserModel::_serde::Deserialize<'1>`, for some specific lifetime `'1`
Run Code Online (Sandbox Code Playgroud)

我该如何解决?

rust serde actix-web

4
推荐指数
1
解决办法
200
查看次数

标签 统计

rust ×2

actix-web ×1

serde ×1