How is `std::cout` implemented?
std::cout is an instance of std::ostream . I can see the declaration of std::cout in a file named /usr/include/c++/7/iostream : extern ostream cout; /// Linked to standard output And std::ostream is defined by typedef std::basic_ostream<char> std::ostream . What's more, it seems that you can't create an instance of std::ostream . See this demo code sni