in Logger.h :
#ifndef CLASS_LOG_H
#define CLASS_LOG_H
#include <exception>
#include <iostream>
#include <fstream>
#include <time.h>
namespace Log
{
class LoggerMess
{
public:
LoggerMess():fileStr("LOG_MESS") {};
~LoggerMess() {};
template<typename T>
LoggerMess& operator << ( const T &mess )
{
try
{
fileName.exceptions( std::fstream::failbit );
fileName.open ( fileStr.c_str(), std::ofstream::app );
fileName << mess;
fileName.close();
}
catch ( std::exception &e )
{
std::cerr << "Exception caught: " << e.what() << std::endl;
}
return *this;
};
void setLogFile ( const std::string &Fset ) { fileStr = Fset; };
private:
std::ofstream fileName;
std::string fileStr;
};
class LoggerCerr
{
public:
LoggerCerr():fileStr("LOG_ERR") {};
~LoggerCerr() {};
template<typename T>
LoggerCerr& operator << ( const T &mess )
{
try
{
fileName.exceptions( std::fstream::failbit );
fileName.open ( fileStr.c_str(), std::ofstream::app );
fileName << mess;
fileName.close();
}
catch ( std::exception &e )
{
std::cerr << "Exception caught: " << e.what() << std::endl;
}
return *this;
};
void setLogFile ( const std::string &Fset ) { fileStr = Fset; };
private:
std::ofstream fileName;
std::string fileStr;
};
extern LoggerMess mess;
extern LoggerCerr cerr;
};
#endif
in Logger.cpp
#include "Logger.h"
namespace Log
{
LoggerMess mess;
LoggerCerr cerr;
};
Используем так :
include "Logger.h"
int main ()
{
Log::cerr << "error";
Log::mess << "mess";
}
Скажите пожалуйста, где здесь ошибка?
И что можно было бы исправить?
Спасибо

Ответ на:
комментарий
от fghj

Ответ на:
комментарий
от aton

Ответ на:
комментарий
от hbee

Ответ на:
комментарий
от aton

Ответ на:
комментарий
от tarle

Ответ на:
комментарий
от fura13

Ответ на:
комментарий
от hbee

Ответ на:
комментарий
от aton

Ответ на:
комментарий
от hbee

Ответ на:
комментарий
от aton
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от tarle
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум C++ iostream::failbit (2005)
- Форум boost.asio, boost.serialization (2010)
- Форум Валится на throw (2005)
- Форум Продолжим про исключения!! (2007)
- Форум Шаблоны, почему не работает? (2017)
- Форум [C++, boost::spirit::phoenix, std::get] Обернуть std::get в phoenix-овскую function (2011)
- Форум Багофича эксепшенов с++ ? (2013)
- Форум C++ IOstream Library и вывод сообщений об ошибках (2009)
- Форум Как правильно наследовать от std::exception ? (2007)
- Форум Множественное наследование и try/catch inderect base, C++ (2008)