私は、コンピューター グラフィックスのプログラムを作成するために Qt4 と C++ を使用しています。デバッグではなく実行時にコンソールにいくつかの変数を出力できるようにする必要がありますが、cout
ライブラリを追加しても機能しないようです。これを行う方法はありますか?
ベストアンサー1
に印刷できる場合はstderr
、本来デバッグ用に用意された次のストリームを使用できます。
#include<QDebug>
//qInfo is qt5.5+ only.
qInfo() << "C++ Style Info Message";
qInfo( "C Style Info Message" );
qDebug() << "C++ Style Debug Message";
qDebug( "C Style Debug Message" );
qWarning() << "C++ Style Warning Message";
qWarning( "C Style Warning Message" );
qCritical() << "C++ Style Critical Error Message";
qCritical( "C Style Critical Error Message" );
// qFatal does not have a C++ style method.
qFatal( "C Style Fatal Error Message" );
コメントで指摘されているように、qDebugメッセージQT_NO_DEBUG_OUTPUT
が定義されている場合は削除されることに注意してください。
stdout が必要な場合は、次のような方法を試すことができます (Kyle Strand が指摘しているように):
QTextStream& qStdOut()
{
static QTextStream ts( stdout );
return ts;
}
次のように呼び出すことができます。
qStdOut() << "std out!";