请考虑以下代码:
#include <tuple>
int main() {
std::tuple<char[2], int> t1;
std::tuple<int> t2;
decltype(std::tuple_cat(t1, t2)) t3;
}
使用g++
(版本&gt; = 5.2)和icc
(13.0.1)进行编译,但clang++
及g++
的旧版本{}不合适它给出了令人讨厌的错误:
数组初始值设定项必须是初始化列表或字符串文字
我的预感告诉我代码不应该编译而且clang++
和g++
的旧版本实际上就在这里,但是想要采取第二意见。