6

vector の move コンストラクターの仕様は次のとおりです (標準からコピー)。

vector(vector&&);

の欠如に注意してくださいnoexcept。しかし、gcc 4.8 と Clang 3.2 の両方std::is_nothrow_move_constructible<std::vector<int>>::valueが true (つまり 1) を返します。

#include<vector>
#include<iostream>

int main()
{
  std::cout << std::is_nothrow_move_constructible<std::vector<int>>::value << '\n';
}

この明らかな不一致の原因は何ですか?

4

1 に答える 1