[advanced c++] Professional coding 02 - 书写格式

半腔热情 提交于 2020-01-27 01:42:33

旧风格之漏洞百出


 

命名法等书写格式,将遵循Google风格,详见以上链接。

以下的”旧内容“将仅供参考。

 

(1) 骆驼式命名法(Camel-Case) 

函数这个看上去不是很适应。

至于整数,可以多一些通用的扩展:idx/index, row/height, col/weight 等。

double类型:dwXXXX

 

(2) 匈牙利命名法 补充

[ 属性+类型+描述 ]

Prefix Comment
g_ 全局变量
m_ 类成员变量
s_ 静态变量
c_ 常量

 

(3) Coding Style

This is the summary of experiences during development.

Type
Prefix
Example
int i iNum, iCnt, iRst, idxCol, idxRow, 
float f fWeight, fLen, 
double d dSize
string s sNamesPath, sFileName, sFolderName
stringstream ss ssNamessPath
array a aItems, aPathList
bool b bIsComplete
function fn fnHandler
object o oHost
pointer p pMem
     
     
global g_ g_bIsComplete
static s_ s_aItems
const c_ c_sPath
debug debug_ debug_totalTime
     
mat Img grayImg (RGB is default), graySmoothedImg, graySmoothedCannyImg
roi roi roiReminderImg
orientation _<xxx> g_roiDetection_bottom, g_roiDetection_left
color channel <r/g/b>ch rchImg, gchImg, bchImg
result _rst, _result grayGridbox_rst, knnGrayImg_rst, knnGrayImg_result
     

 

 

 

 

Google规范风格


 

 

/* 如果有问题则补充 */

 

 


/* 如果有问题则补充 */

 

  


/* 如果有问题则补充 */


 

constexpr的好处:

  1. 是一种很强的约束,更好地保证程序的正确语义不被破坏。
  2. 编译器可以在编译期对constexpr的代码进行非常大的优化,比如将用到的constexpr表达式都直接替换成最终结果等。
  3. 相比宏来说,没有额外的开销,但更安全可靠。

  


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!