• [转]匈牙利命名法(全)


    匈牙利命名法(全)
    匈牙利命名法是微软推广的一种关于变量、函数、对象、前缀、宏定义等各种类型的符号的命名规范。匈牙利命名法的主要思想是:在变量和函数名中加入前缀以增进人们对程序的理解。它是由微软内部的一个匈牙利人发起使用的,结果它在微软内部逐渐流行起来,并且推广给了全世界的Windows开发人员。下面将介绍匈牙利命名法,后面的例子里也会尽量遵守它和上面的代码风格。还是那句话,并不是要求所有的读者都要去遵守,但是希望读者作为一个现代的软件开发人员都去遵守它。

    a       Array                                 数组

      b       BOOL (int)                            布尔(整数)

      by      Unsigned Char (Byte)                  无符号字符(字节)

      c       Char                                  字符(字节)

      cb      Count of bytes                        字节数

      cr      Color reference value                 颜色(参考)值

      cx      Count of x (Short)                    x的集合(短整数)

      dw      DWORD   (unsigned long)                 双字(无符号长整数)

      f       Flags   (usually multiple bit values)   标志(一般是有多位的数值)

      fn      Function                              函数

      g_      global                                全局的

      h       Handle                                句柄

      i       Integer                               整数

      l       Long                                  长整数

      lp      Long pointer                          长指针

      m_      Data member of a class                一个类的数据成员

      n       Short int                             短整数

      p       Pointer                               指针

      s       String                                字符串

      sz      Zero terminated String                以0结尾的字符串

      tm      Text metric                           文本规则

      u       Unsigned int                          无符号整数

      ul      Unsigned long (ULONG)                 无符号长整数

      w       WORD (unsigned short)                 无符号短整数

      x,y     x, y coordinates (short)              坐标值/短整数

      v       void                                  空

    有关项目的全局变量用g_开始,类成员变量用m_,局部变量若函数较大则可考虑用l_用以显示说明其是局部变量。

    前缀       类型       例子

    g_    全局变量       g_Servers

    C     类或者结构体       CDocument,CPrintInfo

    m_   成员变量       m_pDoc,m_nCustomers

    VC常用前缀列表:

    前缀       类型       描述       例子

    ch    char 8位字符    chGrade

    ch    TCHAR       16位UNICODE类型字符       chName

    b     BOOL       布尔变量       bEnabled

    n     int    整型(其大小由操作系统决定)       nLength

    n     UINT       无符号整型(其大小由操作系统决定)       nLength

    w    WORD       16位无符号整型    wPos

    l      LONG       32位有符号整型    lOffset

    dw   DWORD       32位无符号整型       dwRange

    p     *       Ambient memory model pointer 内存模块指针,指针变量    pDoc

    lp     FAR*       长指针       lpDoc

    lpsz  LPSTR       32位字符串指针       lpszName

    lpsz  LPCSTR       32位常量字符串指针       lpszName

    lpsz  LPCTSTR       32位UNICODE类型常量指针       lpszName

    h     handle       Windows对象句柄       hWnd

    lpfn  (*fn)()       回调函数指针 Callback Far pointer to CALLBACK function       lpfnAbort

  • 相关阅读:
    OpenWrt编译系统(1)之make之前
    IoT设备WiFi配网及现状
    Linux系统时间、时区、夏令时杂谈
    串口通信概念整理
    socket编程进阶之路
    段错误
    gitlab将分支代码合并到master上
    dpkg 管理二进制包
    linux 命令关闭网络
    pwn之exp问题反馈和ASLR认知
  • 原文地址:https://www.cnblogs.com/lydmom/p/2709121.html
Copyright © 2020-2023  润新知