WIL説明書(C++)  3.1.0
マクロ定義 | 関数
デバッグ処理

詳解

ここには、デバッグ処理に使用するマクロや関数を集約しています。 デバッグモードの時のみ、アプリケーションのデバッガにデバッグ出力する場合は、 FV_DEBUG_MSG マクロを使用してください。 このマクロは、コンパイラに _UNICODE が指定されたか否かによって 受け取る文字型(ASCII/ワイド文字)が決定します。

コード例:
ASCII版 と ワイド文字版の両方を作成する場合は、 下記のように汎用文字列型を使用すると移植性の高いコードを記述できます。
FV_DEBUG_MSG(( _T("%s(%d): エラーコード=%d\n"), __TFILE__, __LINE__, 99 ));

マクロ定義

#define FV_DEBUG_MSGA(X)
 デバッグメッセージ出力マクロ(ASCII文字) [詳解]
 
#define FV_DEBUG_MSGW(X)
 デバッグメッセージ出力マクロ(ワイド文字) [詳解]
 
#define FV_TRACE_MSGA(X)
 トレース出力マクロ(ASCII文字) [詳解]
 
#define FV_TRACE_MSGW(X)
 トレース出力マクロ(ワイド文字) [詳解]
 
#define FV_DEBUG_FOR(X)
 デバッグ繰り返し開始 [詳解]
 
#define FV_DEBUG_SOURCE(X)
 デバッグ処理 [詳解]
 
#define FV_DEBUG_ENDFOR
 デバッグ繰り返し終端 [詳解]
 
#define _MBS2WCS_(c)   L ## c
 MBCSリテラルからUNICODEリテラルへの変換 [詳解]
 
#define _MCR2WCS_(m)   _MBS2WCS_(m)
 MBCS文字列マクロからUNICODEリテラルへの変換 [詳解]
 
#define __TFILE__   __FILE__
 汎用文字列型 __FILE__ [詳解]
 
#define __TDATE__   __DATE__
 汎用文字列型 __DATE__ [詳解]
 
#define __TTIME__   __TIME__
 汎用文字列型 __TIME__ [詳解]
 
#define __TTIMESTAMP__   __TIMESTAMP__
 汎用文字列型 __TIMESTAMP__ [詳解]
 
#define DispDebugMessage   DispDebugMessageA
 デバッグメッセージ出力関数 [詳解]
 
#define FV_DEBUG_MSG   FV_DEBUG_MSGA
 デバッグメッセージ出力マクロ [詳解]
 
#define FV_TRACE_MSG   FV_TRACE_MSGA
 トレース出力マクロ [詳解]
 

関数

FVCL_API void FVCL::DispDebugMessageA (const CHAR *format,...)
 デバッグメッセージの出力 [詳解]
 
FVCL_API void FVCL::DispDebugMessageW (const WCHAR *format,...)
 デバッグメッセージの出力 [詳解]
 
FVCL_API void FVCL::SetTraceOutEnable (bool enable)
 トレース出力の有効/無効の設定 [詳解]
 
FVCL_API bool FVCL::GetTraceOutEnable ()
 トレース出力の有効/無効の取得 [詳解]
 
FVCL_API void FVCL::DispTraceMessageA (const CHAR *format,...)
 トレースの出力 [詳解]
 
FVCL_API void FVCL::DispTraceMessageW (const WCHAR *format,...)
 トレースの出力 [詳解]
 

マクロ定義詳解

#define FV_DEBUG_MSGA (   X)

デバッグメッセージ出力マクロ(ASCII文字)

現在のアプリケーションのデバッガに任意のメッセージを出力するマクロです。
デバッグビルド以外(_DEBUGが未定義)の時は無効化されます。

参照
FV_DEBUG_MSG
#define FV_DEBUG_MSGW (   X)

デバッグメッセージ出力マクロ(ワイド文字)

現在のアプリケーションのデバッガに任意のメッセージを出力するマクロです。
デバッグビルド以外(_DEBUGが未定義)の時は無効化されます。

参照
FV_DEBUG_MSG
#define FV_TRACE_MSGA (   X)

トレース出力マクロ(ASCII文字)

現在のアプリケーションのデバッガに任意のメッセージを出力するマクロです。
デバッグビルド以外(_DEBUGが未定義)の時は無効化されます。

参照
FV_TRACE_MSG
#define FV_TRACE_MSGW (   X)

トレース出力マクロ(ワイド文字)

現在のアプリケーションのデバッガに任意のメッセージを出力するマクロです。
デバッグビルド以外(_DEBUGが未定義)の時は無効化されます。

参照
FV_TRACE_MSG
#define FV_DEBUG_FOR (   X)

デバッグ繰り返し開始

デバッグモードの時にのみ動作するfor文を記述する際に使用します。 FV_DEBUG_ENDFORマクロと併せて使用します。

参照
FV_DEBUG_ENDFOR
#define FV_DEBUG_SOURCE (   X)

デバッグ処理

デバッグモードの時にのみ動作する処理を記述します。

#define FV_DEBUG_ENDFOR

デバッグ繰り返し終端

デバッグモードの時にのみ動作するfor文の終端を示します。
FV_DEBUG_FORマクロと併せて使用します。

参照
FV_DEBUG_FOR
#define _MBS2WCS_ (   c)    L ## c

MBCSリテラルからUNICODEリテラルへの変換

MBCSリテラルの先頭に L を付加してUNICODEリテラルに変換します。

参照
_MCR2WCS_
MSDN Library - Predefined Macros
#define _MCR2WCS_ (   m)    _MBS2WCS_(m)

MBCS文字列マクロからUNICODEリテラルへの変換

MBCS文字列を定義したマクロを、 MBCSリテラルを受け付けるマクロの引数として指定する際に使用します。

参照
_MBS2WCS_
MSDN Library - Predefined Macros
#define __TFILE__   __FILE__

汎用文字列型 __FILE__

現在のファイル名を示すマクロです。
ビルド時の条件によって下記にように置き換わります。

ビルド時の条件 置き換え後のマクロ
_UNICODE未定義 __FILE__
_UNICODE定義 L ## __FILE__
#define __TDATE__   __DATE__

汎用文字列型 __DATE__

現在の日付を示すマクロです。
ビルド時の条件によって下記にように置き換わります。

ビルド時の条件 置き換え後のマクロ
_UNICODE未定義 __DATE__
_UNICODE定義 L ## __DATE__
#define __TTIME__   __TIME__

汎用文字列型 __TIME__

現在の時刻を示すマクロです。
ビルド時の条件によって下記にように置き換わります。

ビルド時の条件 置き換え後のマクロ
_UNICODE未定義 __TIME__
_UNICODE定義 L ## __TIME__
#define __TTIMESTAMP__   __TIMESTAMP__

汎用文字列型 __TIMESTAMP__

現在の日時を示すマクロです。
ビルド時の条件によって下記にように置き換わります。

ビルド時の条件 置き換え後のマクロ
_UNICODE未定義 __TIMESTAMP__
_UNICODE定義 L ## __TIMESTAMP__
#define DispDebugMessage   DispDebugMessageA

デバッグメッセージ出力関数

現在のアプリケーションのデバッガに任意のメッセージを出力する関数です。
ビルド時の条件によって下記の関数に置き換わります。

ビルド時の条件 置き換え後の関数
_UNICODE未定義 DispDebugMessageA
_UNICODE定義 DispDebugMessageW
#define FV_DEBUG_MSG   FV_DEBUG_MSGA

デバッグメッセージ出力マクロ

現在のアプリケーションのデバッガに任意のメッセージを出力するマクロです。
ビルド時の条件によって下記のマクロに置き換わります。

ビルド時の条件 置き換え後のマクロ
_UNICODE未定義 FV_DEBUG_MSGA
_UNICODE定義 FV_DEBUG_MSGW
参照
FV_DEBUG_MSGA
FV_DEBUG_MSGW
#define FV_TRACE_MSG   FV_TRACE_MSGA

トレース出力マクロ

現在のアプリケーションのデバッガに任意のメッセージを出力するマクロです。
ビルド時の条件によって下記のマクロに置き換わります。

ビルド時の条件 置き換え後のマクロ
_UNICODE未定義 FV_TRACE_MSGA
_UNICODE定義 FV_TRACE_MSGW
参照
FV_TRACE_MSGA
FV_TRACE_MSGW

関数詳解

FVCL::DispDebugMessageA ( const CHAR format,
  ... 
)

デバッグメッセージの出力

現在のアプリケーションのデバッガに任意のデバッグメッセージを出力します。

引数
[in]format書式
[in]...可変長引数
解説:
当関数は、ASCII文字列でトレース出力する為に使用します。
引数には printf関数と同じ構文を使用できます。 但し、書式と可変長引数から成型された文字列のサイズは、 終端のNULLを含めて512byte以下でなければなりません。
その他の仕様は、WindowsAPIのOutputDebugStringA 関数に従属します。
参照
FV_DEBUG_MSG
DispTraceMessageA
FVCL::DispDebugMessageW ( const WCHAR format,
  ... 
)

デバッグメッセージの出力

現在のアプリケーションのデバッガに任意のデバッグメッセージを出力します。

引数
[in]format書式
[in]...可変長引数
解説:
当関数は、ワイド文字列でトレース出力する為に使用します。
引数には printf関数と同じ構文を使用できます。 但し、書式と可変長引数から成型された文字列のサイズは、 終端のNULLを含めて512文字以下でなければなりません。
その他の仕様は、WindowsAPIのOutputDebugStringW 関数に従属します。
参照
FV_DEBUG_MSG
DispTraceMessageW
FVCL::SetTraceOutEnable ( bool  enable)

トレース出力の有効/無効の設定

トレース出力の有効/無効を設定します。

引数
[in]enableトレース出力の有効/無効の指示
  • true : 有効
  • false : 無効

参照
DispTraceMessageA
DispTraceMessageW
FV_TRACE_MSG
FVCL::GetTraceOutEnable ( )

トレース出力の有効/無効の取得

トレース出力の有効/無効の状態を取得します。

戻り値
トレース出力が有効な場合、trueを返します。 無効の場合は、falseを返します。
参照
DispTraceMessageA
DispTraceMessageW
FV_TRACE_MSG
FVCL::DispTraceMessageA ( const CHAR format,
  ... 
)

トレースの出力

現在のアプリケーションのデバッガにトレースを出力します。

引数
[in]format書式
[in]...可変長引数
解説:
当関数は、ASCII文字列でトレース出力する為に使用します。
引数には printf 関数と同じ構文を使用できます。 但し、書式と可変長引数から成型された文字列のサイズは、 終端のNULLを含めて512byte以下でなければなりません。
その他の仕様は、WindowsAPI の OutputDebugStringA 関数に従属します。

DispDebugMessageA 関数との違いは、グローバル変数により 出力の有無を制御できる点にあります。 DispDebugMessageA 関数が突発的なエラーの解析に使用されるのに対し、 当関数は、処理の流れをより詳細に追跡する為に使用します。 追跡を行わない時は、SetTraceOutEnable 関数でトレース出力を無効にする事で デバッガ出力の負荷を回避できます。
参照
SetTraceOutEnable
GetTraceOutEnable
FV_TRACE_MSG
DispDebugMessageA
FVCL::DispTraceMessageW ( const WCHAR format,
  ... 
)

トレースの出力

現在のアプリケーションのデバッガにトレースを出力します。

引数
[in]format書式
[in]...可変長引数
解説:
当関数は、ワイド文字列でトレース出力する為に使用します。
引数には wprintf 関数と同じ構文を使用できます。 但し、書式と可変長引数から成型された文字列のサイズは、 終端のNULLを含めて512文字以下でなければなりません。
その他の仕様は、WindowsAPI の OutputDebugStringW 関数に従属します。

DispDebugMessageW 関数との違いは、グローバル変数により 出力の有無を制御できる点にあります。 DispDebugMessageW 関数が突発的なエラーの解析に使用されるのに対し、 当関数は、処理の流れをより詳細に追跡する為に使用します。 追跡を行わない時は、SetTraceOutEnable 関数でトレース出力を無効にする事で デバッガ出力の負荷を回避できます。
参照
SetTraceOutEnable
GetTraceOutEnable
FV_TRACE_MSG
DispDebugMessageW

Documentation copyright © 2007 FAST Corporation. [B-001864]
Generated on 2024年10月10日(木) 10時01分25秒 for WIL説明書(C++) by doxygen 1.8.11