#include <iostream>
#include <type_traits>
struct Foo
{
Foo(Foo&& f) = delete;
};
int main()
{
std::cout << std::is_move_constructible<Foo>::value; // output is 1
std::cin.ignore();
}
В msv2013 я должен что-то забыть или есть ошибка?
APPENDUM:
#include <iostream>
#include <type_traits>
struct Foo
{
~Foo(){}
};
int main()
{
std::cout << std::is_move_constructible<Foo>::value;
std::cin.ignore();
}
даже при использовании CTP эта программа выводит результат 1 (и стандарт С++ говорит об обратном), тогда как первый пример с CTP отлично работает.