C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c – 是一个简单的可复制的:: std :: tuple类模板可能吗?是否存在实施?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要一个简单的可复制的类元组类,但没有合适的实现存在,我自己无法想出一个,我认为甚至可能不可能.它的原因是参. A :: std :: tuple可以保存引用,但是一个简单的可复制元组可能无法,因为它可能没有非平凡的构造函数,并且必须在类元组类的构造函数中初始化引用并存储引用包装器会使类似元组的类变得非常重要.我的问题在标题中.

@R_301_1964@

使用reference_wrapper存储引用是 entirely possible

只是有一个非平凡的非特殊构造函数(例如std :: reference_wrapper< T> :: reference_wrapper(T&))绝对没问题.所以trivially_copyable_tuple也是如此;只要它有一个简单的复制构造函数,trivially_copyable_tuple :: trivially_copyable_tuple(int&,float&,char)就可以了.

实际上,你根本不需要使用std :: reference_wrapper;然引用类型不是TriviallyCopyable,但包含引用的类类型本身是TriviallyCopyable(尽管它不是Pod,StandardLayoutType,DefaultConstructible,TriviallyDefaultConstructible或Trivial).

以下是一些例子:

> my own tuple implementation,表明不需要任何特殊技巧使其成为TriviallyCopyable;
> a very slightly more involved implementation显示如果你提供重新赋值(因此需要在内部使用reference_wrapper),你仍然可以保留所有其他属性;
> a tuple with through assignability表明你失去了琐碎的可复制性,但仅限于实际包含引用类型的元组;你可以在包含标量的元组上保留琐碎的可复制性.

大佬总结

以上是大佬教程为你收集整理的c – 是一个简单的可复制的:: std :: tuple类模板可能吗?是否存在实施?全部内容,希望文章能够帮你解决c – 是一个简单的可复制的:: std :: tuple类模板可能吗?是否存在实施?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。