Я получаю эти две ошибки
Ошибка № 01:
ошибка C2146: синтаксическая ошибка: отсутствует ';' перед идентификатором 'mainObj'
Ошибка № 02
ошибка C4430: отсутствует указатель типа - предполагается int. Примечание: C ++ не поддерживает default-int
У меня есть следующие классы
Главная
Клиент
CNode
когда я создаю объект указателя класса 'CNode' в классе 'Customer', ошибки нет. Но когда я создаю не указатель объекта класса Main в классе Customer
Компилятор дает выше две ошибки.
в то время как у класса «Main» есть основная функция.
, пожалуйста, помогите мне решить эти ошибки.
main.h
#pragma once
#include <iostream>
#include<string>
#include<conio.h>
#include<fstream>
#include<iomanip>
#include <sstream>
#include "Customer.h"
using namespace std;
class Main
{
int acc;
int total = 0;
int rtotal = 0;
int sum = 0;
public:
Main();
void design();
void welcome();
string passcin();
void login_des();
void admin_account();
void add_staff();
void delete_staff(int);
void search_staff(int);
void update_staff(int);
void room_display();
void room_book();
void checkout();
int main();
};
customer.h
#pragma once
#include <iostream>
#include<string>
#include<fstream>
#include <sstream>
#include "Main.h"
#include "Node.h"
class Customer
{
CNode *head, *tail, * temp;
Main mainObj;
public:
Customer();
bool search(string, string);
void updateAccount(string, string);
CNode* inputNode();
void custAccount(string);
void createAccount();
void createAccount(CNode *);
void addCust();
void deleteCust(int sno);
void searchCust(int sno);
void updateCust(int sno);
void displayCust();
CNode* retriveAllCust();
};
node.h
#pragma once
#include <iostream>
#include<string>
#include<fstream>
using namespace std;
class CNode
{
string name, email, pass, roomNo, phoneNo, country, creditCardName, cardNo;
bool bookFlag;
CNode *prev, *next;
int length;
public:
CNode();
CNode(string n, string e, string ps, string r, string pn, string country, string creditName, string creditNo, bool bookFlag);
CNode(string n, string e, string ps, string pn, string country);
string getName();
string getPass();
CNode* getNextNode();
void display();
void addCust();
string retriveCust();
friend class Customer;
};
Я поставил точку с запятой перед mainObj
как
; Main mainObj;
ошибка возникает в классе клиента
в
Main mainObj;