С++,Ошибка: undeclared identifier

221
14 декабря 2021, 02:20

Здравствуйте мне необходимо сделать проект по учебе, и я столкнулся со следующей проблемой: Есть абстрактный класс Entity, от него наследуются классы Product, Client, Sale Так же есть абстрактный класс ListData, который отвечает хранение и управление списком list, о него так же наследуются ProductsData, ClientsData, SalesData. И возникает совершенно не понятная мне ошибка 'Sale': undeclared identifier:

#include "ListData.h"
#include "Sale.h"
class SalesData : public ListData
{
public:
    void Add(shared_ptr<Entity> item) override {
        if (item == NULL)
            return;
        if (item->GetID() == 0)
            item->SetID(NextID());
        ListData::Add(item);
        Sale* sale = NULL; //Здесь ошибка
    }
};

Ошибка возникает на этапе компиляции проекта, причем следующий код без ошибки:

#include "ListData.h"
#include "Product.h"
class ProductsData : public ListData
{
public:
    void Add(shared_ptr<Entity> item) override {
        if (item == NULL)
            return;
        if (item->GetID() == 0)
            item->SetID(NextID());
        ListData::Add(item);
        Product* product = NULL;
    }
};

Код "Sale.h":

#include "Entity.h"
#include "System.h"
class Sale :
    public Entity
{
private:
    int product_id;
    int client_id;
    Date date_sale;
    Date date_delivery;
    int pcount;
    int summary_pay;
public:
    Sale();
    Sale(int _product_id, int _client_id, Date _date_sale, Date _date_delivery, int _count);
    Sale(int id, int _product_id, int _client_id, Date _date_sale, Date _date_delivery, int _count);
    int GetProductID();
    int GetClientID();
    Date GetDateSale();
    Date GetDateDelivery();
    int GetCount();
    int GetSummatyPay();
    void SetSummaryPay(int pay);
    string ToString() override;
};

Помогите пожалуйста, плюс приемлю любую критику по проекту. Полностью код можно посмотреть на: https://github.com/nikitavasilev03/OnlineShop-Project-SAOD-

READ ALSO
Как задать фокус полю клинированной формы?

Как задать фокус полю клинированной формы?

Клонирую формуКак у клонированной формы полю задать фокус?

177
В методе Get работает, в POST нет

В методе Get работает, в POST нет

есть метод: в этом исполнении currentUser равен нулл

153
чтение текстового файла и работа с ним c# winforms

чтение текстового файла и работа с ним c# winforms

дан файл f,содержащий сведения о кубиках : размер каждого кубика(длина ребра),его цвет(красный,желтый) и материал(деревянный,пластмассовый)...

204