环绕 std::ignore
Wrapping std::ignore
我正在开发自定义库。到目前为止,我已经将 std::tuple 和 std::tie 包装到我自己的 myOwn::Tuple 和 myOwn::tie 中。它们的功能与 std::tuple 和 std::tie 相同。我想用 std::ignore.
做类似的事情
到目前为止,我已经写了以下内容:
namespace myOwn
{
auto
tilde()
-> decltype(std::ignore)
{
return std::ignore;
}
}
我唯一的问题是我现在必须使用带括号的 myOwn::tilde()。我希望能够将其用作 myOwn::tilde。到目前为止,我在 std::ignore 上读到的只是如何使用它,
此处:
此处:Requirements for std::ignore
这里:C++: Return type of std::tie with std::ignore
我试过使用
typedef std::ignore tilde
但这并不成功。任何帮助,将不胜感激。这个问题对其他任何试图包装对象的人都有用。
如果不需要修改std::ignore
,只是想重命名,那么
decltype(std::ignore) &tilde = std::ignore;
在命名空间范围内应该可以满足您的需求。
std::ignore
不保证是 DefaultConstructible
或 CopyAssignable
,因此它不能被移植构造或复制,但我们可以保存对它的引用。 tilde
的类型是 decltype(std::ignore) &
,但是由于 std::tie
需要引用,所以它的功能应该与 std::ignore
.
相同
我正在开发自定义库。到目前为止,我已经将 std::tuple 和 std::tie 包装到我自己的 myOwn::Tuple 和 myOwn::tie 中。它们的功能与 std::tuple 和 std::tie 相同。我想用 std::ignore.
做类似的事情到目前为止,我已经写了以下内容:
namespace myOwn
{
auto
tilde()
-> decltype(std::ignore)
{
return std::ignore;
}
}
我唯一的问题是我现在必须使用带括号的 myOwn::tilde()。我希望能够将其用作 myOwn::tilde。到目前为止,我在 std::ignore 上读到的只是如何使用它,
此处:
此处:Requirements for std::ignore
这里:C++: Return type of std::tie with std::ignore
我试过使用
typedef std::ignore tilde
但这并不成功。任何帮助,将不胜感激。这个问题对其他任何试图包装对象的人都有用。
如果不需要修改std::ignore
,只是想重命名,那么
decltype(std::ignore) &tilde = std::ignore;
在命名空间范围内应该可以满足您的需求。
std::ignore
不保证是 DefaultConstructible
或 CopyAssignable
,因此它不能被移植构造或复制,但我们可以保存对它的引用。 tilde
的类型是 decltype(std::ignore) &
,但是由于 std::tie
需要引用,所以它的功能应该与 std::ignore
.