6

かなりの数の Win32 構造体では、構造体のサイズをそのメンバーの 1 つに与える必要があります。多くの場合、これを格納するメンバーが呼び出されるcbか、this のプレフィックスが付けられます。

DISPLAY_DEVICEにはcbサイズのメンバーがあります。

CB_GETCURSELなど、特定の種類のメッセージの名前にも使用されます。おそらく、この場合はComboBoxです。

Win32 の他の場所では、cb頭字語 (だと思いますか?) がメンバー名の一部として使用されます。

と を持つWNDCLASScbWndExtraなどcbClsExtra

STARTUPINFOあなたはそれを持っています:

typedef struct _STARTUPINFO {
  DWORD  cb;
  LPTSTR lpReserved;
  LPTSTR lpDesktop;
  LPTSTR lpTitle;
  DWORD  dwX;
  DWORD  dwY;
  DWORD  dwXSize;
  DWORD  dwYSize;
  DWORD  dwXCountChars;
  DWORD  dwYCountChars;
  DWORD  dwFillAttribute;
  DWORD  dwFlags;
  WORD   wShowWindow;
  WORD   cbReserved2;
  LPBYTE lpReserved2;
  HANDLE hStdInput;
  HANDLE hStdOutput;
  HANDLE hStdError;
} STARTUPINFO, *LPSTARTUPINFO;

ドキュメントには次のように書かれています。

CB

構造体のサイズ (バイト単位)。

誰かが何cbの略か意味を知っているのだろうかと思いましたか? 意味があるのなら。

おそらく誰かがこれの歴史を知っていて、それがそれを説明するかもしれません.

4

4 に答える 4

7

おそらくcount bytesの略です。

たとえば、STARTUPINFOに初期化する必要がありますsizeof(STARTUPINFO)。そうすれば、使用している構造体のバージョンが時間の経過とともに成長するため、Windows の内部はそれを知ることができます。

それ以外の場合は、単にバイト数です。

ComboBoxes を除いて、Combo Boxを表します。

于 2013-08-18T11:08:51.480 に答える
4

cbこの場合は

バイト数。

于 2013-08-18T11:08:27.923 に答える
1

これは、いわゆるハンガリー語表記のMicrosoft フレーバーです。他の回答が既に述べたように、それがバイト数の場合。cb

于 2013-08-18T11:15:05.763 に答える
1

IInspectable は非常に正しいです! cb はバイト数、cch は文字数を意味します。StringCbPrintfおよびStringCchPrintfを参照してください。

于 2014-01-20T02:51:57.810 に答える