std::常量引用的元组
std::tuple of const references?
我有一个函数,过去被称为
void func(const A& v0, const A& v1, const A& v2);
为了清楚起见,我想将参数作为3元组传递。如果要避免任何额外的开销,正确的方法是什么?以下会是最有效的吗?:
void func(std::tuple<const A&> v);
如果它们不是多态的,并且经常一起使用(我认为是创建的),那么为什么不将它们打包到值元组std::tuple<A, A, A>
或命名结构中呢。您可以通过const引用来传递它。此解决方案没有性能开销,而且实际上可能更快。
实际上,既然这三个元素都是同一类型的,为什么不使用三个元素的数组A[3]
呢?元组最适合异构类型。
相关文章:
- C++:TypeDef使用元组
- Pybind11:将元组列表从Python传递到C++
- 是默认情况下分配给char数组常量的值
- 重载元组索引运算符-C++
- 在C++中,如何通过几种类型从元组中选择多个元素
- 将fold表达式与std::一起用于两个元组
- std::ranges::elements_view,用于自定义类似元组的数据
- 将元组的向量转换/构造为堆
- 专用于 std 元组的模板,而无需用户执行remove_cvref
- 将元组的向量构造成堆
- 元组由 Swig 生成的 Python 包装器返回,用于C++向量
- 将元组类型扩展为可变参数模板?
- 时间复杂度 当具有复合数据类型(如元组或对)时?
- 类内部和外部静态 constexpr 元组之间的差异
- 可变参数模板与使用元组在参数中添加不同的数据对
- 使用对另一个元组不同类型的元素的非常量引用来初始化元组的元素
- 元组 std::get() 不适用于变量定义的常量
- 错误:无法从"元组<[...]、std::__1::元组<无符号长长、无符号长长>>"到"常量元组<[...],uint_type>"的可行转换
- 使元组保存常量引用或常量值
- std::常量引用的元组