Differences between ITLogLib/Standard C++ and ITLogLib/Visual C++

Although we followed our ‘Unified API’ strategy for all ITLogLib variants there are a view differences between the Standard C++ and the Visual C++ variant of ITLogLib:

 

Differences:

 

 

ITLogLib/Standard C++

ITLogLib/Visual C++

ITLogLib::GetLogChannel( const char* LogChannelName )

returns a ITOutputLogChannel object (that can be checked with IsOpen())

returns a ITOutputLogChannel pointer (or NULL if not created)

ITLogMsg::ITLogMsg copy constructor

not available

available

 

Even in ITLogLib/Visual C++ it is not necessary to copy ITLogMsg objects, because these objects only are smartpointers to the underlying logmessages. As function parameters ITLogMsg should be passed by reference not by value.