У меня проблема с созданием ссылки функции struct.C++ struct link function
Ошибка 1 ошибка C2143: синтаксическая ошибка: отсутствует ';' перед '*' (Config.h) Ошибка 2 ошибки C4430: отсутствует спецификатор типа - int. (Config.h)
Library.h
#include "Config.h"
#include "Struct.h"
Struct.h
struct COMMANDSTRUCT
{
char Name[50];
int Enable;
int Price;
};
Config.cpp
#include "Library.h"
COMMANDSTRUCT* Config::getIndex(std::string Text)
{
for (int i = 0; i < m_COMMANDSTRUCT.size(); i++)
{
if (strcmp(m_COMMANDSTRUCT[i].Name, Text.c_str()) == 0)
{
return &m_COMMANDSTRUCT[i];
}
}
return NULL;
}
config.h
class Config
{
public:
static COMMANDSTRUCT* getIndex(std::string Text);
static std::vector<COMMANDSTRUCT> m_COMMANDSTRUCT;
};
использование
COMMANDSTRUCT * lpCommand = Config::getIndex("post");
эти сообщения об ошибках являются неполными - компилятор обычно говорит вам, какие именно строки и какая часть кода дает ему вопросы – UnholySheep
В какой файл 'COMMANDSTRUCT' определен? Вы включили это? –
в Func.cpp включен Struct.h файл с, struct, yes it is includeset – feesar