c++11 - 为什么 std::aligned_union 需要最小尺寸作为模板参数?

标签 c++11

std::aligned_union 有一个 std::size_t “最小长度”参数。现在,通常的工会没有这个,所以我想知道为什么这是必要的。有人可以向我解释为什么吗?

最佳答案

我打赌这是针对泛型编程情况,其中可变参数类型列表可能为空。

在这种情况下,将使用某个最小尺寸,以便您仍然控制对齐(不会有类型可以从中获取对齐值)

关于c++11 - 为什么 std::aligned_union 需要最小尺寸作为模板参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27069303/

相关文章:

c++ - 在执行 SFINAE 时访问模板化派生类 (CRTP) 的静态函数时类型不完整

c++ - 在不经常更新的情况下预测计算大型共享数据结构上可能需要的值

c++ - 真正测试std::atomic是否无锁

c++ - 如何使用智能指针进行自动清理?

visual-c++ - 什么是 vs2012 cl.exe 相当于 gcc -std=c++11?

c++ - 样板函数名称

c++ - 使用模板实现通用字符串解析器

c++ - 如何在层次结构中实现运算符使用?

c++ - SFINAE 给出 "Inheriting constructor does not inherit ellipsis"警告

c++ - 在 C++ 中生成字符串的排列