You use q QTextStream for writing output on the console. QTextStream is connected to stdout.
A QTextStream steam is buffered and this can lead to the above problem. The text you write to the stream is waiting to be written to the device. To do this at once you can use two techniques.
1. You can use the flush() function. This will fluch all the buffered data and write it to the stream.
2. You can use the "<< endl" which will implicitly call the flush function.
Please note that "\n" is not the same as "endl". "\n" will not call the flush routine. Also note that in earlier version of Qt did not have this feature. It has been ficed so it reacts al in the STL. (= standard template libraries)
is equivalent to
<< "\n" << qout.flush();
In this case qout is defined as QTextStream qout(stdout).
About the Author
Wim Peeters is electronics engineer with an additional master in IT and over 30 years of experience, including time spent in support, development, consulting, training and database administration. Wim has worked with SQL Server since version 6.5. He has developed in C/C++, Java and C# on Windows and Linux. He writes knowledge base articles to solve IT problems and publishes them on the Lubby Knowledge Platform.