Я пытаюсь скомпилировать управляемый проект cpp (/ clr). Код выглядит следующим образом:
#include "stdafx.h"
class TestClass
{
public:
//virtual ~TestClass() {}
virtual void func() {}
System::ConsoleColor color;
};
class Helper
{
public:
static TestClass Help()
{
TestClass a;
return a;
}
};
int main()
{
Helper::Help();
return 0;
}
Не удается скомпилировать со следующей ошибкой
ошибка C3699: ‘&&’: нельзя использовать эту косвенность по типу
‘System :: ConsoleColor’
Если я добавлю тривиальный деструктор (виртуальный или не виртуальный) или преобразую функцию func () в не виртуальную, ошибка компилятора исчезнет. Может кто-нибудь объяснить поведение.
Также ошибка компилятора происходит на VS2015 и VS2017, но не на VS2013.
Задача ещё не решена.
Других решений пока нет …