2017-01-07 6 views
0

私はsetw()とsetfill()と同等のものを探しているフレームでQtロギングを使用しようとしています。すべての例ではQtがどのように文字列を扱うのか、またはパッド付き数字を生成する方法は?

:どのように私は私のペイロード部分の周りの「」時代遅れのオフに取り除くことができ、私はコード

int TestNum = 12; 
    ostringstream oss; 
    oss << setw(5) << setfill(' ') << TestNum; 
    qInfo() << "Simple ='" << TestNum << "'"; 
    qInfo() << "Stream ='" << oss.str().c_str() << "'"; 
    qInfo() << "QString ='" << QString("%1").arg(TestNum,5) << "'"; 
    qInfo() << "char* ='" << QString("%1").arg(TestNum,5).toStdString().c_str() << "'"; 

Simple =' 12 ' 
Stream =' 12 ' 
QString =' " 12" ' 
char* =' 12 ' 

私の質問であるの出力を持っているのですか? (もし私が16進数で12を書いたければ、「x C」を受け取る)

引用符は文字列の一部ですか? QTのフレーム内では、はい。変換された画像、長さなどが異なる場合、変換はどれだけ有効ですか?

Qtの枠内で、関数の結果を変換せずに、要求された数のスペースで埋められた数を生成できませんか?

なぜ '< <'に 'setw()'がオーバーロードされていないのですか? 一般的にstd :: stringのような標準C++型はC++フレームワークでサポートされていないのはなぜですか? (C-char *に変換する必要があります)

C++(Qtの有無にかかわらず使用できる関数のような)との互換性のために、ostringstreamメソッドは少ない項目を生成するようです。どんな良いアイデア?

答えて

0

私は、私はあなたが探しているものを理解していますが、QDebugストリームの引用自動でオンにしたいならば、あなたはnoquote()

qDebug().noquote() << QString("some string"); 
+0

で申し訳ありませんが、私は使用しておりませんことを行うことができます全くわかりませんそのようなアクティブ出力オブジェクト – katang

関連する問題