В VS 2010 SP1:
class Foo
{
public:
Foo() { }
Foo(Foo const&) = delete; // Line 365
Foo& operator=(Foo const&) = delete; // Line 366
};
не компилируется. Он жалуется:
CPPConsole.cpp(365): ошибка C2059: синтаксическая ошибка: ';'
CPPConsole.cpp(365): ошибка C2238: неожиданный токен (ы), предшествующий ';'
CPPConsole.cpp(366): ошибка C2059: синтаксическая ошибка: ';'
CPPConsole.cpp(366): ошибка C2238: неожиданный токен (ы), предшествующий ';'
Разве это еще не поддерживается? Странно, Intellisense, похоже, признает эту конструкцию. В нем говорится, что "IntelliSense: function" Foo:: operator = (const Foo &) "(объявлено в строке 366) нельзя ссылаться - это удаленная функция"
Что мне не хватает?