想问一下一般开发软件最好用什么方法命名函数和变量

时间:2021-02-09 20:39:10
本人正在学习C++中看见了些书,可书上的程序对函数和变量的命名方法都不一致
有的随便命名,有的用匈牙利方法命名,想问一下有开发经验的人现在一般开发软件
都用什么方法命名函数和变量

7 个解决方案

#1


还是以匈牙利命名法为根据,当然你也可以尽情发挥只要别人能看懂。

#2


主要的原则就是可读性
一是不要太长,二是含义清晰
尽量让别人一看到你的变量名或者函数名就知道是什么意思
另外,变量和函数的习惯命名规则也有不同
例如变量一般是m_VarName
而函数一般是GetSomeCode()等等

#3


用VC里的这套也行
int m_itest;

#4


1.匈牙利命名规则

变动   前缀     类型

        a       Array                                                   
        b       Boolean                                                 
        by      Byte                                                    
        c       Char                           //有符号型字符                    
        cb      Char Byte                       //无符号型字符(没多大用处)      
        cr      ColorRef                        //颜色参考值                      
        cx,cy   Length of x,y (ShortInt)            //坐标差(长度)                  
        dw      Double Word                                                    
        fn      Function                                                         
        h       Handle                                                          
        i       Integer                                                           
        m_      Member of a class                                                 
        n       Short Integer                                                     
        np      Near Pointer                                                      
        p       Pointer                          lp      Long Pointer                                                      
×(str)   s       String                                                       
        sz      String with Zero End              //以字符'\0'结尾的字符串          
        tm      Text                           //文本内容                        
        w       Word                                                          
        x,y     Coordinate                      //坐标                            















                        
                   2.Panorama 系统的命名约定 

2.1 VC中变量命名时的前缀约定

Array       a...                        //例:CStringArray saText                                       
BOOL      b...
UINT       n...
int          i...
short        n...
long         l...
WORD      w...
DWORD     dw...
float         f...
char         c...
char*        psz...
TCHAR*     psz...
LPCTSTR    lpsz...
CString      str...
COLORREF  cr...
LPLOGPALETTE lp...  (包括LP开头的类型都是这样)
POINT      pt...
CPoint      pt...
HANDLE   h...
HGLOBAL  h...       (包括H开头的类型都是这样)

说明:
     1.如果是指向上述类型的指针,就在上面规范前加 "p" ;
     2.如果是指向上述类型的双重指针,就在上面规范前加 "pp" ;
     3.如果是类成员变量,则在上面规范前加 "m_";
     4.全局变量,则在上面规范前加 "g_";
     5.在类型前加了"const",命名约定不变;

2.2 VC中变量命名时的后缀约定
1.MFC类
CWnd*  p...Wnd  省去的地方一般为该类的用途 (如果是某一个类的成员,则还应该在前加 "m_")又如:CView* p...View

2.3 局部变量应尽量易懂简洁,使用常见的变量,如Num,nCount,i,j,k,n,len,pos, offset,nReadNum,index,nRet,ret, string,filename临时变量,如ltmp,ftmp,tmpStr,tempStr 。。。

2.4 函数命名也应该见名知意。如CalcAllDataStyle(),ReadDocDataFromTime(),GetIndexInfo()
常见的函数Init_, Open_, Create_, Get_, Set_, Read_, Load_, Write_, Start_, Stop_, Check_, Test_, Fill_, Process_, Sort_, Do_, Select_, Is_, Exist_,_Ex…

2.5 禁止使用汉语拼音来命名;

2.6在代码中尽量不用具体的大小数值,定义成宏,便于以后维护,如:
#define MAX_DOWNLOADNUM 20
struct DownInfo m_DownInfo[MAX_DOWNLOADNUM];

2.7 VC中一些控件的缩写:
ComboBox  cmb
Edit        edt
Dialog      dlg
ListBox     lst
Picture      pic
Animate     ani

#5


一个组里,一般都要求用一种变量命名方法!

我一般按照楼上兄台说的!

#6


好像有本书写这方面的、

#7


高质量C++编程指南,李锐的,难得的好书啊

#1


还是以匈牙利命名法为根据,当然你也可以尽情发挥只要别人能看懂。

#2


主要的原则就是可读性
一是不要太长,二是含义清晰
尽量让别人一看到你的变量名或者函数名就知道是什么意思
另外,变量和函数的习惯命名规则也有不同
例如变量一般是m_VarName
而函数一般是GetSomeCode()等等

#3


用VC里的这套也行
int m_itest;

#4


1.匈牙利命名规则

变动   前缀     类型

        a       Array                                                   
        b       Boolean                                                 
        by      Byte                                                    
        c       Char                           //有符号型字符                    
        cb      Char Byte                       //无符号型字符(没多大用处)      
        cr      ColorRef                        //颜色参考值                      
        cx,cy   Length of x,y (ShortInt)            //坐标差(长度)                  
        dw      Double Word                                                    
        fn      Function                                                         
        h       Handle                                                          
        i       Integer                                                           
        m_      Member of a class                                                 
        n       Short Integer                                                     
        np      Near Pointer                                                      
        p       Pointer                          lp      Long Pointer                                                      
×(str)   s       String                                                       
        sz      String with Zero End              //以字符'\0'结尾的字符串          
        tm      Text                           //文本内容                        
        w       Word                                                          
        x,y     Coordinate                      //坐标                            















                        
                   2.Panorama 系统的命名约定 

2.1 VC中变量命名时的前缀约定

Array       a...                        //例:CStringArray saText                                       
BOOL      b...
UINT       n...
int          i...
short        n...
long         l...
WORD      w...
DWORD     dw...
float         f...
char         c...
char*        psz...
TCHAR*     psz...
LPCTSTR    lpsz...
CString      str...
COLORREF  cr...
LPLOGPALETTE lp...  (包括LP开头的类型都是这样)
POINT      pt...
CPoint      pt...
HANDLE   h...
HGLOBAL  h...       (包括H开头的类型都是这样)

说明:
     1.如果是指向上述类型的指针,就在上面规范前加 "p" ;
     2.如果是指向上述类型的双重指针,就在上面规范前加 "pp" ;
     3.如果是类成员变量,则在上面规范前加 "m_";
     4.全局变量,则在上面规范前加 "g_";
     5.在类型前加了"const",命名约定不变;

2.2 VC中变量命名时的后缀约定
1.MFC类
CWnd*  p...Wnd  省去的地方一般为该类的用途 (如果是某一个类的成员,则还应该在前加 "m_")又如:CView* p...View

2.3 局部变量应尽量易懂简洁,使用常见的变量,如Num,nCount,i,j,k,n,len,pos, offset,nReadNum,index,nRet,ret, string,filename临时变量,如ltmp,ftmp,tmpStr,tempStr 。。。

2.4 函数命名也应该见名知意。如CalcAllDataStyle(),ReadDocDataFromTime(),GetIndexInfo()
常见的函数Init_, Open_, Create_, Get_, Set_, Read_, Load_, Write_, Start_, Stop_, Check_, Test_, Fill_, Process_, Sort_, Do_, Select_, Is_, Exist_,_Ex…

2.5 禁止使用汉语拼音来命名;

2.6在代码中尽量不用具体的大小数值,定义成宏,便于以后维护,如:
#define MAX_DOWNLOADNUM 20
struct DownInfo m_DownInfo[MAX_DOWNLOADNUM];

2.7 VC中一些控件的缩写:
ComboBox  cmb
Edit        edt
Dialog      dlg
ListBox     lst
Picture      pic
Animate     ani

#5


一个组里,一般都要求用一种变量命名方法!

我一般按照楼上兄台说的!

#6


好像有本书写这方面的、

#7


高质量C++编程指南,李锐的,难得的好书啊