loops

アクセスカウンタ

zoom RSS Qtプログラミング(その3) デバッグに必要なツールの作成

<<   作成日時 : 2010/12/27 22:08   >>

ブログ気持玉 0 / トラックバック 0 / コメント 0

3.ユーティリティ関数

(1)trace

Windows APIのOutputDebugString()関数を、Qtプロジェクトでも利用することができるので、トレース関数を作ってみることにする。

まず、OutputDebugString()はwindows.hを宣言する必要があるので、これを宣言する。

#ifdef WIN32
#include <windows.h>
#endif

inline void trace(const char *cformat, ...)
{
va_list ap;
va_start(ap, cformat);
QString s;
s.vsprintf(cformat, ap);
va_end(ap);
#ifdef WIN32
OutputDebugString(s.toStdWString().c_str());
#else
s += "\n";
printf(s.toStdWString().c_str());
#endif
};

QStringクラスにvsprintf()関数があるおかげで、かなり簡単に作ることができた。

(2)to_string

数値を文字列に変換するのに、毎回sprintfなどを使用するのは面倒なので、変換関数を作った。

inline QString to_string(double val)
{
std::stringstream ss;
ss.clear();
ss << val;
QString qs(ss.str().c_str());
return qs;
};

(3)Jstr

Qtは、何もしないと日本語が文字化けするので、QString::fromLocal8Bit()で変換する必要がある。これを短くするマクロを作った。

#define Jstr(str) QString::fromLocal8Bit(str)



テーマ

注目テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
Qtプログラミング(その3) デバッグに必要なツールの作成 loops/BIGLOBEウェブリブログ
文字サイズ:       閉じる