Быстрая Проверка/Обзор программирования

Я ломал голову, пытаясь начать программировать организованным методом библиотеки. Мой код работает, но перевод и разделение на файлы .h и .cpp изобилуют ошибками.

Это должно быть до глупости просто, все, о чем я прошу, - это отзыв:

Заголовочный файл

# ifndef _INITIALIZE_H
#define _INITIALIZE_H

#if (ARDUINO >= 100)
# include <Arduino.h>
#else
# include <WProgram.h>
#endif

//-Extra Includes-
#include <config.h> //Provides baud...
#include <SSC32.h>

#define STANDARD 0
#define DEBUG    1
#define VIRTUAL  2

class Initialize {
    private:
        int _mode;
    public:
        Initialize();
        void begin();

};

#endif

связанный файл .cpp:

//Comments
#include <Initialize.h>
SSC32 SSC;

Initialize::Initialize() 
{
    _mode = STANDARD;
}

void Initialize::begin() 
{
    SSC.begin(baud);
    if(Serial.available() > 0){
        if(sscReturn == 1){
            Serial.println("ver");
        }
    }
}

Ошибка компилятора:

D:\Github\Project-Onyx-Quadruped\code\HostControllerFirmware\Onyx-HostFirmware-Initial-7-2-15\libraries\Initialize\Initialize.cpp: In member function 'void Initialize::begin()':
D:\Github\Project-Onyx-Quadruped\code\HostControllerFirmware\Onyx-HostFirmware-Initial-7-2-15\libraries\Initialize\Initialize.cpp:9:12: error: expected primary-expression before '=' token
D:\Github\Project-Onyx-Quadruped\code\HostControllerFirmware\Onyx-HostFirmware-Initial-7-2-15\libraries\Initialize\Initialize.cpp:9:16: error: expected primary-expression before ')' token
D:\Github\Project-Onyx-Quadruped\code\HostControllerFirmware\Onyx-HostFirmware-Initial-7-2-15\libraries\Initialize\Initialize.cpp:9:16: error: expected ';' before ')' token
D:\Github\Project-Onyx-Quadruped\code\HostControllerFirmware\Onyx-HostFirmware-Initial-7-2-15\libraries\Initialize\Initialize.cpp:11:7: error: expected primary-expression before '=' token
D:\Github\Project-Onyx-Quadruped\code\HostControllerFirmware\Onyx-HostFirmware-Initial-7-2-15\libraries\Initialize\Initialize.cpp:11:7: error: expected ')' before ';' token
D:\Github\Project-Onyx-Quadruped\code\HostControllerFirmware\Onyx-HostFirmware-Initial-7-2-15\libraries\Initialize\Initialize.cpp:11:17: error: expected primary-expression before '==' token
D:\Github\Project-Onyx-Quadruped\code\HostControllerFirmware\Onyx-HostFirmware-Initial-7-2-15\libraries\Initialize\Initialize.cpp:11:21: error: expected ';' before ')' token
Failed compiling libraries

, 👍1

Обсуждение

Что такое sscReturn?, @Majenko

Где объявлен sscReturn? По-видимому, это (основная) причина ошибок компилятора., @Greenonline


1 ответ


-1

Извини, я сам все понял.

В файле "config.h", который я вытаскивал, у меня было #define = 18;

вместо #определить 18

Возможно, я ошибаюсь, но компилятор перестал жаловаться

,

Что вы определяете как 18?, @Majenko

@пользователь вы не можете просто ввести #define 18, это должно быть что-то вроде #define xyz 18. Это означает, что с этого момента в вашем коде xyz будет заменен на 18 (https://www.arduino.cc/en/Reference/Define), @evolutionizer

Я могу ошибаться " - Ты **** ошибаешься. Строка " #определить 18 не компилируется: ошибка: имена макросов должны быть идентификаторами. Это не очень полезный ответ. Я собираюсь проголосовать за то, чтобы закрыть вопрос и ответ., @Nick Gammon