WIL説明書(C++)  3.1.0
型定義
データ型定義

詳解

型定義

typedef void VOID
 型なし [詳解]
 
typedef int BOOL
 ブーリアン型 [詳解]
 
typedef char CHAR
 ASCII文字型 [詳解]
 
typedef wchar_t WCHAR
 ワイド文字型 [詳解]
 
typedef signed char SCHAR
 整数型(8bit) [詳解]
 
typedef unsigned char UCHAR
 整数型(8ビット)[符号なし] [詳解]
 
typedef short SHORT
 整数型(16ビット) [詳解]
 
typedef unsigned short USHORT
 整数型(16ビット)[符号なし] [詳解]
 
typedef int INT
 整数型(32ビット) [詳解]
 
typedef unsigned int UINT
 整数型(32ビット)[符号なし] [詳解]
 
typedef long LONG
 整数型(32ビット) [詳解]
 
typedef unsigned long ULONG
 整数型(32ビット)[符号なし] [詳解]
 
typedef float FLOAT
 単精度浮動小数点型(32ビット) [詳解]
 
typedef double DOUBLE
 倍精度浮動小数点型(64ビット) [詳解]
 
typedef int64_t INT64
 整数型(64ビット) [詳解]
 
typedef uint64_t UINT64
 整数型(64ビット)[符号なし] [詳解]
 
typedef char * LPSTR
 ASCII文字列型 [詳解]
 
typedef const char * LPCSTR
 ASCII文字列型(const付き) [詳解]
 
typedef wchar_t * LPWSTR
 ワイド文字列型 [詳解]
 
typedef const wchar_t * LPCWSTR
 ワイド文字列型(const付き) [詳解]
 
typedef char _TCHAR
 汎用文字型 [詳解]
 
typedef char TCHAR
 汎用文字型 [詳解]
 
typedef LPSTR LPTSTR
 汎用文字列型 [詳解]
 
typedef LPCSTR LPCTSTR
 汎用文字列型(const付き) [詳解]
 
typedef void * FHANDLE
 FIEオブジェクトハンドル [詳解]
 
typedef void * HVAREDGE
 汎用エッジデータハンドル [詳解]
 
typedef void * HPTNPARAM
 パタンパラメータハンドル [詳解]
 
typedef void *(* LPCREATEOBJECT) (LPCTSTR szClassName, void *pvParam)
 オブジェクトの動的生成関数のポインタ型 [詳解]
 
typedef unsigned(__stdcall * LPTHREADEX) (void *)
 スレッド関数型 [詳解]
 
typedef void(* LPPOSIXTHREAD) (void *)
 POSIXスレッド関数型 [詳解]
 

型定義詳解

型なし

ブーリアン型

範囲: TRUE/FALSE

ASCII文字型

範囲: -128 ~ 127
注) /J コンパイラオプション を指定すると、 0~255 になります。

参照
FVCL::TypeRange::CHAR

ワイド文字型

範囲: 0 ~ 65,535

参照
FVCL::TypeRange::WCHAR

整数型(8bit)

範囲: -128 ~ 127

参照
FVCL::TypeRange::SCHAR

整数型(8ビット)[符号なし]

範囲: 0 ~ 255

参照
FVCL::TypeRange::UCHAR

整数型(16ビット)

範囲: -32,768 ~ 32,767

参照
FVCL::TypeRange::SHORT

整数型(16ビット)[符号なし]

範囲: 0 ~ 65,535

参照
FVCL::TypeRange::USHORT
INT

整数型(32ビット)

範囲: -2,147,483,648 ~ 2,147,483,647

参照
FVCL::TypeRange::INT

整数型(32ビット)[符号なし]

範囲: 0 ~ 4,294,967,295

参照
FVCL::TypeRange::UINT

整数型(32ビット)

範囲: -2,147,483,648 ~ 2,147,483,647

参照
FVCL::TypeRange::LONG

整数型(32ビット)[符号なし]

範囲: 0 ~ 4,294,967,295

参照
FVCL::TypeRange::ULONG

単精度浮動小数点型(32ビット)

正数範囲 : 1.175494351e-38F ~ 3.402823466e+38F
小数点以下: 7桁

参照
FVCL::TypeRange::FLOAT

倍精度浮動小数点型(64ビット)

正数範囲 : 2.2250738585072014e-308 ~ 1.7976931348623158e+308
小数点以下: 16桁

参照
FVCL::TypeRange::DOUBLE

整数型(64ビット)

範囲: -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807

参照
FVCL::TypeRange::INT64

整数型(64ビット)[符号なし]

範囲: 0 ~ 18,446,744,073,709,551,615

参照
FVCL::TypeRange::UINT64

ASCII文字列型

ASCII文字列型(const付き)

ワイド文字列型

ワイド文字列型(const付き)

汎用文字型

この型定義は、ビルドする際に _UNICODE マクロが定義されていれば、 WCHAR に置き換えられます。それ以外は、CHAR に置き換えられます。

ビルド時の条件 対応する型
_UNICODE が未定義 CHAR
_UNICODE が定義されている WCHAR

汎用文字型

この型定義は、ビルドする際に _UNICODE マクロが定義されていれば、 WCHAR に置き換えられます。それ以外は、CHAR に置き換えられます。

ビルド時の条件 対応する型
_UNICODE が未定義 CHAR
_UNICODE が定義されている WCHAR

汎用文字列型

この型定義は、ビルドする際に _UNICODE マクロが定義されていれば、 WCHAR* に置き換えられます。それ以外は、CHAR* に置き換えられます。

ビルド時の条件 対応する型
_UNICODE が未定義 CHAR*
_UNICODE が定義されている WCHAR*

汎用文字列型(const付き)

この型定義は、ビルドする際に _UNICODE マクロが定義されていれば、 const付き WCHAR* に置き換えられます。 それ以外は、const付き CHAR* に置き換えられます。

ビルド時の条件 対応する型
_UNICODE が未定義 const CHAR*
_UNICODE が定義されている const WCHAR*

FIEオブジェクトハンドル

本ライブラリで使用するハンドル型です。

汎用エッジデータハンドル

パタンパラメータハンドル

LPCREATEOBJECT

オブジェクトの動的生成関数のポインタ型

FVCLまたはEVCのクラスを名前指定で動的に生成する関数のポインタ型です。

LPTHREADEX

スレッド関数型

_beginthreadex 関数に渡す関数の型を示します。
Microsoft Visual C++ で、_beginthreadex 関数を使用する場合にご利用ください。

クラスのメンバ関数へのポインタを引数として渡す場合は、 下記のようにキャストする必要が有ります。 そうしなければ、コンパイル時にエラーが発生します。

1 CMyClass myclass;
2 
3 UINT uiThreadID;
4 HANDLE hThread = (HANDLE)_beginthreadex(
5  NULL, 0,
6  (LPTHREADEX)CMyClass::ThreadFunc,
7  &myclass,
8  CREATE_SUSPENDED, &uiThreadID
9  );


クラスのメンバ関数をスレッドに登録する場合は、下記のように static にする必要が有ります。

1 class CMyClass
2 {
3 public:
4  static UINT ThreadFunc( void* pvParam )
5  {
6  CMyClass* pThis = static_cast<CMyClass*>(pvParam);
7  if( pThis != NULL )
8  {
9  // 処理
10  }
11  _endthreadex( 0 );
12  return 0;
13  }
14 };


LPPOSIXTHREAD

POSIXスレッド関数型

pthread_create 関数に渡す関数の型を示します。
Microsoft Visual C++ 以外のコンパイラで、posixスレッドを使用する場合にご利用ください。

クラスのメンバ関数へのポインタを引数として渡す場合は、 下記のようにキャストする必要が有ります。 そうしなければ、コンパイル時にエラーが発生します。

1 CMyClass myclass;
2 
3 pthread_t tThreadID;
4 pthread_create(
5  &tThreadID,
6  NULL,
7  (LPPOSIXTHREAD)CMyClass::ThreadFunc,
8  &myclass
9 );


クラスのメンバ関数をスレッドに登録する場合は、下記のように static にする必要が有ります。

1 class CMyClass
2 {
3 public:
4  static UINT ThreadFunc( void* pvParam )
5  {
6  CMyClass* pThis = static_cast<CMyClass*>(pvParam);
7  if( pThis != NULL )
8  {
9  // 処理
10  }
11  return 0;
12  }
13 };



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