ad

函数参数的类型是可疑的吗?-英雄云拓展知识分享

匿名投稿 240 2024-01-22

我有一个使用返回代码的课程:

class MyClass

{

// ...

public:

// ValueType get_value() const; // usual code

ErrorCode get_value(ValueType& value) const; // uses error code

// ...

函数参数的类型是可疑的吗?-英雄云拓展知识分享

};

因此,这种情况下,第2种情势 get_value() 实际提供值作为函数参数,而不是返回值。

是不是可以推断出功能参数的类型 get_value(),或许使用 decltype?

int main()

{

// ...

MyClass my_class;

// auto val = my_class.get_value(); // okay: value has correct type

declytype( /* something here */ ) value;

const auto error = my_class.get_value( value );

// ...

}

答案

如果要推断出参数的类型,则可使用模板来履行此操作:

naMESpace detail

{

template<typename>

struct Helper;

template<typename R, typename C, typename T>

struct Helper <R(C::*)(T)>

{

using type = T;

};

}

然后使用它:

detail::Helper<decltype(&MyClass::get_value)>::type value;

// ...

const auto error = my_class.get_value(value);

看 相干问题 更多细节。


🚀🌟 点击注册 免费试用超级应用平台-英雄云企业级HPaPaaS 🌟🚀 😃👉🌐

免责声明:

本网址(www.yingxiongyun.com)发布的材料主要源于独立创作和网友匿名投稿。此处提供的所有信息仅供参考之用。我们致力于提供准确且可信的信息,但不对材料的完整性或真实性作出任何保证。用户应自行验证相关信息的正确性,并对其决策承担全部责任。对于由于信息的错误、不准确或遗漏所造成的任何损失,本网址不承担任何法律责任。本网站所展示的所有内容,如文字、图像、标志、音频、视频、软件和程序等的版权均属于原创作者。如果任何组织或个人认为网站内容可能侵犯其知识产权,或包含不准确之处,请即刻联系我们进行相应处理。

标签:C ++ 声明
上一篇:从Bitbucket获得所有分支机构-英雄云拓展知识分享
下一篇:快捷肯定列表是不是包括数组中最少包括一个项目的方法-英雄云拓展知识分享
相关文章

 发表评论

暂时没有评论,来抢沙发吧~

×