请考虑以下代码:

#include <tuple>

int main() {
   std::tuple<char[2], int> t1;
   std::tuple<int> t2;
   decltype(std::tuple_cat(t1, t2)) t3;
}

它用g++ (版本> = 5.2)和icc (13.0.1)编译好,但不是在clang++和旧版本的g++ ,它会产生令人讨厌的错误:

数组初始值设定项必须是初始化列表或字符串文字

我的预感告诉我,代码不应该编译和clang++和旧版本的g++实际上就在这里,但想要采取第二意见。

  ask by W.F. translate from so

本文未有回复,本站智能推荐: