Windows客户端C/C++编程规范“建议”——表达式和运算 4 表达式和运算 4.1 比较操作中将常量设置为左值 等级:【推荐】说明:编写代码时,如果将常量设置为右值。可能因马虎将“==”写成“=”导致逻辑错误。这种场景下,编译器是不会报错的,代码检查也比较容易被忽视。 例子: 代码语言:javascript 复制 std::string::s...
工作中接触了很多编程规范。其中最有意思的是,公司最近发布了一版C/C++编程规范,然后我看到该规范的最后一段时,有这么一句:“该规范不适用于Windows平台开发”。看来这份规范是由做其他平台开发的同学制定的。那么做Windows开发的人都去哪儿了?后来由于工作需要,项目组需要我制定一份编程规范。这也是我这系列博客的...
说明:曾经一批老的C函数存在不安全隐患。 为了提高程序的健壮性。需使用安全版函数替代。 比較常见的非安全函数: 编译器报: warning C4996: 'XXXX': This function or variable may be unsafe. Consider using wcsncpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for de...
复制 #defineUNSAFEint_tmain(int argc,_TCHAR*argv[]){int m=-1;char buffer[8]={0};int n=-1;std::string str="012345678901234567890123456789";#ifdefUNSAFEmemcpy(buffer,str.c_str(),str.length());#elsememcpy_s(buffer,_countof(buffer),str.c_str(),str.length());#endifprintf("%d %d\n"...
看来这份规范是由做其它平台开发的同学制定的。那么做Windows开发的人都去哪儿了?后来因为工作须要,项目组须要我制定一份编程规范。这也是我这系列博客的由来。(转载请指明出于breaksoftware的csdn博客) 说到“规范“”,可能没多少人喜欢这种东西。相信非常多project师和我一样,都喜欢互联网的一些特质:自由、兼容并包...
工作中接触了非常多编程规范。当中最有意思的是,公司近期公布了一版C/C++编程规范,然后我看到该规范的最后一段时,有这么一句:“该规范不适用于Windows平台开发”。看来这份规范是由做其它平台开发的同学制定的。那么做Windows开发的人都去哪儿了?后来因为工作须要,项目组须要我制定一份编程规范。这也是我这系列博客...
C 类或结构 CDocument,CPrintInfo m_ 成员变量 m_pDoc,m_nCustomers 变量命名规范 前缀 类型 描述 实例 ch char 8位字符 chGrade ch TCHAR 如果_UNICODE定义,则为16位字符 chName b BOOL 布尔值 bEnable n int 整型(其大小依赖于操作系统) nLength ...
深入编程: 在C语言中,函数的声明,如果没有指明返回值类型,缺省值为void,这个程序的主函数就没有返回值。不过,在Windows编程时,我们最好养成个好习惯,指明函数的返回值类型,因为在C++中,函数返回值类型是不可以缺省的。而我们在Windows C编程时,还是会用到C++的一些概念,这样做,有利于以后深入地学习。 规范一点的...
一般前缀命名规范前缀 类型实例 C 类或结构 CDocument,CPrintInfo m_ 成员变量 m_pDoc,m_nCustomers 变量命名规范前缀 类型 描述实例 ch char 8位字符 chGrade ch TCHAR 如果_UNICODE定义,则为16位字符 chName b BOOL 布尔值 bEnable n int 整型(其大小依赖于操作系统) nLength ...
计数c(通常用cnt) 字符ch(通常用c) 整型i(通常用n) 字节by 字w 实型r 无符号 u 描述部分: 最大Max 最小Min 初始化 Init 临时变量 T(或Temp) 源对象 Src 目的对象 Dest MFC、句柄、控件及结构的命名规范: Windows类型 样本变量;MFC类 样本变量 HWND hWnd; CWnd* pWnd; HDLG hDlg; CDialog* pDlg...