理解Hungarian notation

匈牙利命名法,由Charles Simonyi在1970年代发明,最初在Xerox PARC使用,后来在微软的Windows应用程序开发中流行。这种命名约定通过变量名指示其意图、类型或特性。例如,'a'表示数组,'b'表示BOOL,'i'表示整数等。然而,关于是否应使用匈牙利命名法存在争议,一些观点认为它增加了代码的阅读难度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • Hungarian notation

    Hungarian notation is an identifier naming convention in computer programming, in which the name of a variable or function indicates its intention or kind, and in some dialects its type.

    The original Hungarian Notation is sometimes called Apps Hungarian as it became popular in the Microsoft Apps division in the development of Word, Excel and other apps.

  • History

    The original Hungarian notation, which would now be called Apps Hungarian, was invented by Charles Simonyi, a programmer who worked at Xerox PARC circa 1972-1981, and who later became Chief Architect at Microsoft.

    PARC(Palo Alto Research Center, formerly Xerox PARC) is a research and development company in Palo Alto, Califonia. Formed in 1969.

  • Coding Style Concentions From Microsoft

    From Microsoft, Hungarian Notation has become a common coding practice in Win32 programming. They include variable prefix notations that give to variable names a suggestion of the type of the variable.

    The following table lists common prefixes:

    PrefixDescription
    aArray
    bBOOL (int)
    cChar
    cbCount of bytes
    crColor reference value
    cxCount of x (short)
    dwDWORD (unsigned long)
    fFlags (usually multiple bit values)
    fnFunction
    g_Global
    hHandle
    iInteger
    lLong
    lpLong pointer
    m_Data member of a class
    nShort int
    pPointer
    sString
    szZero terminated String
    tmText metric
    uUnsigned int
    ulUnsigned long (ULONG)
    wWORD (unsigned short)
    x,yx, y coordinates (short)

    Much more information could be found here.

  • Refrecences

  1. StackOverflow Tag: Hungarian notation
  2. Good Examples of Hungarian Notation? [closed]
  3. .NET General Naming Conventions
  4. Making Wrong Code Look Wrong
  5. Why shouldn’t I use “Hungarian Notation”?
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值