The global objects std::clog
and std::wclog
control output to a stream buffer of implementation-defined type (derived from std::streambuf), associated with the standard C output stream stderr, but, unlike std::cerr/std::wcerr, these streams are not automatically flushed and cout is not automatically tie()'d with these streams.
These objects are guaranteed to be initialized during or before the first time an object of type std::ios_base::Init is constructed and are available for use in the constructors and destructors of static objects with ordered initialization (as long as <iostream> is included before the object is defined).
Unless sync_with_stdio(false) has been issued, it is safe to concurrently access these objects from multiple threads for both formatted and unformatted output.
[edit] NotesThe âcâ in the name refers to âcharacterâ (stroustrup.com FAQ); clog
means âcharacter logâ and wclog
means âwide character logâ.
#include <iostream> struct Foo { int n; Foo() { std::clog << "constructor\n"; } ~Foo() { std::clog << "destructor\n"; } }; Foo f; // static object int main() { std::clog << "main function\n"; }
Output:
constructor main function destructor[edit] See also initializes standard stream objects
std::ios_base
) [edit] writes to the standard C error stream stderr, unbuffered
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4