小编use*_*756的帖子

C++类重定义错误

我正在编译一个日志记录程序,但是我收到了这个错误,并且无法解决我的生活...

logger.cpp:15: error: redefinition of ‘class Logger’
logger.h:20: error: previous definition of ‘class Logger’
Run Code Online (Sandbox Code Playgroud)

用gcc编译时

g++ -Wall logger.cpp -o log
Run Code Online (Sandbox Code Playgroud)

logger.h:

#ifndef LOGGER_H
#define LOGGER_H

#include <fstream>
#include <iostream>
#include <string>
using std::string;

class Logger
{

static Logger* m_pInstance;

public:
static Logger* Instance() { return m_pInstance; }
void writeLog(string message);
void openLogFile(string fileName);
void closeLogFile();
void deleteLogger();

};
#endif
Run Code Online (Sandbox Code Playgroud)

logger.cpp

#include "logger.h"

#include <fstream>
#include <iostream>

class Logger
{
static Logger* m_pInstance;
std::ofstream m_pOutputFile;
Logger()
{
}
~Logger()
{
} …
Run Code Online (Sandbox Code Playgroud)

c++ header class redefine redefinition

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

c++ ×1

class ×1

header ×1

redefine ×1

redefinition ×1