无法解析一组变量

A set of variables cannot be resolved

本文关键字:一组 变量      更新时间:2023-10-16

我在尝试使用另一个类中声明的变量时遇到问题。我不知道问题出在哪里。谁能帮忙?

这是我的头文件:

#include <string>
#include <iostream>
#include "HELO.h"
using namespace std;
#ifndef SMTPSERVER_H_INCLUDED
#define SMTPSERVER_H_INCLUDED
class SMTPServer
{
    private: bool newMessage;
    private: bool newRec;
    private: bool newSender;
    private: bool newData;
    public: SMTPServer();
    void send(HELO h1);
    void OriginalState();

};

#endif // SMTPSERVER_H_INCLUDED

以下是我的cpp类。当我构建程序时,它显示错误:符号"newData"无法解析。

#include "SMTPServer.h"
#include "HELO.h"

SMTPServer::SMTPServer()
{
    newMessage = NULL;
    newRec = NULL;
    newSender = NULL;
    newData = NULL;
}
void send(HELO h1)
{
}
void OriginalState()
{
    newMessage = false;
    newRec = false;
    newSender = false;
    newData = false;
}

您需要对函数定义使用范围解析运算符::

void SMTPServer::OriginalState()
{
    newMessage = false;
    newRec = false;
    newSender = false;
    newData = false;
}

您应该在.cpp文件中告诉这些方法属于 SMTPServer 类。 即:

void SMTPServer::send(HELO h1)
{
}
void SMTPServer::OriginalState()
{
  newMessage = false;
  newRec = false;
  newSender = false;
  newData = false;
}

sendOriginalState 的实现中,您没有使用范围解析运算符来表示这些是成员函数实现;按原样,编译器将这些作为自由函数。

你忘了把SMTPServer::的东西放在最后两个函数定义上