Противоречивое объявление персонажа - PullRequest
0 голосов
/ 28 апреля 2020

Сейчас я работаю над проектом Arduino, где мне нужны библиотеки WiFi.h и MySQL_Connection.h.

Переменная «пароль» используется в обеих этих библиотеках и поэтому вызывает конфликт.

Как я могу решить эту проблему? Я все еще новичок в платформе, и поэтому любые возможные решения должны быть простыми для понимания. Заранее спасибо.

Сообщение об ошибке, предоставленное Arduino: "конфликт статуса 1, конфликтующее объявление" char password [] '"


include <Ethernet.h>
#include "WiFi.h";
#include <MySQL_Connection.h>
#include <MySQL_Cursor.h>

byte mac_addr[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };

//Wifi

//Wifi connection, this call is to the Wifi.h library
const char* ssid = "pp******";
const char* password = "*******";

//This call is to the <MySQL_Connection.h> library

IPAddress server_addr(10,0,1,35);  // IP of the MySQL *server* here
char user[] = "root";              // MySQL user login username
char password[] = "secret";        // MySQL user login password


1 Ответ

0 голосов
/ 28 апреля 2020

Я бы выбрал заголовок, который содержит меньше вещей для вашего кода, и поместил бы его в пространство имен:

#include "WiFi.h"

namespace mySQL
{
#include "MySQL_Connection.h"
}

using mySQL::something;
using mySQL::something_else;

...

foo(password);
bar(mySQL::password);

РЕДАКТИРОВАТЬ: Мне не понятно, как код вы опубликовал работы, но попробуйте это:

include <Ethernet.h>

namespace Wifi
{
#include "WiFi.h";
const char* password = "*******";
}
#include <MySQL_Connection.h>
#include <MySQL_Cursor.h>

byte mac_addr[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };

const char* ssid = "pp******";

IPAddress server_addr(10,0,1,35);  // IP of the MySQL *server* here
char user[] = "root";              // MySQL user login username
char password[] = "secret";        // MySQL user login password

Если это не сработает, сообщите мне результат в комментарии, и мы еще немного повозимся. Если это работает, имейте в виду, что вам все еще нужно приложить усилия, чтобы узнать о пространствах имен.

...