Member 13536260 Ответов: 1

Что случилось с MSVC?


Я разрабатываю C++ графическое приложение с использованием фреймворка JUCE. Я использовал proJUCER для создания нового проекта, немного изменил его и снова построил проект с помощью MSVC, но я получил странную ошибку от своих классов (которая была автоматически сгенерирована proJUCER):

C2236 unexpected token 'class'. Did you forget a ';'?           Main.cpp   15
C2143 syntax error: missing ';' before '{'                      Main.cpp   16
C2059 syntax error: 'public'                                    Main.cpp   15 
C2059 syntax error: ';'                                         Main.cpp   15
C2447 '{': missing function header (old-style format list?)     Main.cpp   16


вот мой класс:
class NewProjectApplication  : public JUCEApplication
{
public:
      // statements here 
      class MainWindow    : public DocumentWindow
      {
      public:
            // Statements here
      private:
            // Statements here
      };
private:
      // Statements here
};


Что я уже пробовал:

Я попытался погуглить об ошибках, но на самом деле ничего не нашел

CHill60

Разместите верхний бит main.cpp - проблема не в вашем классе, а перед строкой 15 из main.cpp, возможно, в включенном заголовке

1 Ответов

Рейтинг:
2

Afzaal Ahmad Zeeshan

Во-первых, вы уверены, что это единственные строки кода в файле? Если это так, то подумайте о том, чтобы проверить, какой компилятор C++ поддерживает JUCE (и проверить, совместим ли ваш компилятор с этой версией JUCE или что-то еще), поскольку я еще не проверил это. Возможно, именно Джюс заставляет проект не строиться, изменяя где - то поведение.

Код работает отлично, и я только что воспроизвел рабочий образец этого, попробуйте его здесь, Оболочка C++ [^]—не используя фреймворк Джюса, а просто имитируя все вокруг.