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

旧风格之漏洞百出


 

命名法等书写格式,将遵循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. 相比宏来说,没有额外的开销,但更安全可靠。

 

 

 

VSCode 插件


Ref: 自己使用过比较好用的VSCode插件

C/C++ [ms-vscode.cpptolls] 智能推导,调试和代码浏览

C/C++ Clang Command Adapter [mitaki28.vscode-clang] 使用Clang的命令来分析C/C++/Object-C的代码诊断,还有代码补全。

C/C++ Snippets [hars.cppsnippets] 有用的C/C++代码片断,节省时间

C++ Algorithm Mnemonics [davidbroetje.algorithm-mnemonics-vscode] 写C++不可能不接触STL,这个插件能让你使用STL算法更有生产力

cppcheck [matthewferreira.cppcheck] 这个插件帮你方便的调用cppcheck这款C++静态分析软件的命令来检查你的C++代码隐患,包括越界,资源泄漏等

CTags Support[jaydenlin.ctags-support] 先要安装ctags,然后就可以查函数等符号的定义了,但是不能查引用,支持语言很多,不用担心。

Clang-Format [xaver.clang-format] 把你的C,C++ Java js等代码格式化为Clang的代码风格



  


posted @   郝壹贰叁  阅读(158)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示