apologies for my quick-without-thinking reply, I didn't realize you meant the 'mutable' keyword!You're right that making the logger mutable would allow it in const methods. It works right now, thank you.Is this a reasonable solution? Or having a mutable member in the class is considered "code smell" ?On Sun, Nov 24, 2013 at 3:21 AM, Mauricio Carneiro <carneiro@gmail.com> wrote:
I am declaring the logger member mutable, the problem is that every method in the class that uses the logger now has to be non-const because they are changing the state of a member of the class.I believe there is a better design out there, and I'd like to hear how you guys have been using the logger in your classes then, I must be doing it wrong (or just ugly).Thank you,On Sun, Nov 24, 2013 at 3:07 AM, Vicente J. Botet Escriba <vicente.botet@wanadoo.fr> wrote:
_______________________________________________Le 24/11/13 08:48, Mauricio Carneiro a écrit :
You can declare your logger member mutable.I am trying to use a severity channel logger but I hit the problem with BOOST_LOG_SEV not being a const method -- I'm thinking because of both open_record() and push_record()
This will basically force me to make all methods in my classes not const because they want to write out to their loggers. I can't really afford to do that -- so I'm restricted to global loggers at the moment.
In my current implementation, each class has a logger with the class name as the channel (initialized in their constructors), and it issues log messages at any point with BOOST_LOG_SEV(this->logger, level)
Vicente
I'd love to hear the reason behind the non-constness and if my design is not the intended for Boost::Log.
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users