Быстрая Проверка/Обзор программирования
Я ломал голову, пытаясь начать программировать организованным методом библиотеки. Мой код работает, но перевод и разделение на файлы .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
@MiddleMan, 👍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
- Как я могу прервать задержку() при нажатии кнопки?
- Объявление переменной внутри основного цикла
- Светодиод мигает с помощью кнопки
- в то время как (1) внутри, если условно
- HTML-страница переменной ESP8266 Webserver ESP8266WebServer (не как один постоянный символ)
- ESP8266 Webserver ESP8266WebS сервер перемещает функцию обработчика в отдельный файл .h .c
- Понимание кода Debounce
- Как использовать передатчик и приемник для условной отправки строковых сообщений получателю?
Что такое sscReturn?, @Majenko
Где объявлен sscReturn? По-видимому, это (основная) причина ошибок компилятора., @Greenonline