Поделиться через


Предупреждение компилятора (уровень 1) C4822

"член": функция-член локального класса не имеет тела

Замечания

Функция-член локального класса была объявлена, но не определена в классе. Чтобы использовать функцию-член локального класса, необходимо определить ее внутри класса. Вы не можете объявить его в классе и определить его вне класса.

Любое внеклассное определение для функции-члена локального класса является ошибкой.

В Visual Studio 2019 и более поздних версиях C4822 является предупреждением по умолчанию .

Пример

Следующий пример приводит к возникновению предупреждения C4822:

// C4822.cpp
// compile with: /W1
int main() {
   struct C {
      void func1(int);   // C4822
      // try the following line instead
      // void func1(int){}
  };
}