## CGAL::Verbose_ostream

### Definition

The class Verbose_ostream can be used as an output stream. The stream output operator << is defined for any type. The class Verbose_ostream stores in an internal state a stream and whether the output is active or not. If the state is active, the stream output operator << uses the internal stream to output its argument. If the state is inactive, nothing happens.

#include <CGAL/IO/Verbose_ostream.h>

### Creation

Verbose_ostream verr ( bool active = false, std::ostream& out = std::cerr);
| creates an output stream with state set to active that writes to the stream out.

### Operations

template < class T >
Verbose_ostream& | verr << T t

### Example

The class Verbose_ostream can be conveniently used to implement for example the is_valid() member function for triangulations or other complex data structures.

        bool is_valid( bool verbose = false, int level = 0) {
            Verbose_ostream verr( verbose);
            verr << "Triangulation::is_valid( level = " << level << ')' << endl;
            verr << "    Number of vertices = " << size_of_vertices() << endl;
            // ...
        }