Ошибка c3699 при компиляции класса с использованием System enum

Я пытаюсь скомпилировать управляемый проект 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.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]