我写了一个简单的类模板:
template <class T>
class my_class
{
public:
my_class(T value)
: my_Value(value)
{
}
private:
T my_Value;
};
Run Code Online (Sandbox Code Playgroud)
现在我可以在一个简单的函数签名中使用这个模板,比如: my_function(my_class<std::string> my_string)
当我想调用该函数时,我可以轻松使用它:
auto my_instance = my_class<std::string>("my value");
my_function(my_instance);
Run Code Online (Sandbox Code Playgroud)
但我想实现的是这样的函数调用:
my_function("my value")
Run Code Online (Sandbox Code Playgroud)
我的类模板应该为我隐式地转换为模板的类型。我想我需要某种运算符重载。
std:optional 例如可以这样做。
我正在使用 Swagger 进行 OpenApi 3.0 的序列化。详细地说,我尝试使用以下格式序列化输入查询参数数组
?myArray=1,2,3,4
Run Code Online (Sandbox Code Playgroud)
我知道如何在 swagger 文档中实现这一点。只需设置parameter.explode=false即可
parameters:
- name: myArray
in: query
explode: false
...
Run Code Online (Sandbox Code Playgroud)
但我不知道如何在控制器类的 ASP.Net Core 3.1 中设置此参数属性,以正确生成我的 swagger 文档。我尝试了一些方法,例如实现基于IParameterFilter 的过滤器,但对我来说没有任何效果。