对华为编码习惯中变量的定义风格的疑问(码农们来讨论一下吧) 命名就和char szTmpBuf[512];差不多做二次开发的时候还遇到过拼音命名的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 记得effctive c++上提到不要过早定义变量,使用的时候才去定义 呵呵,那是囧的很但是数组。不是最好要区别一下吗? 有的加了ar有的用g ,g_不是全局变量的吗?那不就二义性了 像szTmpBuf这样的。是否要在函数开始出一次性定义,只在if里定义,尤其是你的命名还不能让人一下明白意图 不能肯定。问你boss一次性写在函数开始,我觉得没必要,影响代码逻辑。 数组不管嵌套在几个 { 中定义,其在栈上的空间都是一进入函数就确定分配了的也不存在优化之说,编译器在编译期就已经计算好每个函数局部变量的占用的空间大小,进入函数的代码总是是push EBP ; mov EBP,ESP; sub ESP,大点儿的数组无非sub ESP减得多点,仅此而已 sadgas点噶发挥第三方工具和认同 还有一个好处:那就是 goto. 全部在开头定义变量后, goto可以满天飞,都不怕跳过了变量 如果C的话没问题,C++的话就不合适了。写在开头那么类类型的局部变量都会构造+析构一次的随用随声名的话,提前return是不会构造+析构下面没执行到的对象的。 似乎不是这样。曾用过IAR的编译器,从生成的MAP文件看,不同的优化等级,会导致函数使用的栈深度不同。所以我感觉是否一次性分配出来和优化等级有关。 因为华为大部分的业务都是C作为开发语言的。你应该也属于那些部门下。所以你的leader才会这么要求你的吧。C和C++的习惯和书写规范是不大一样的。不能从其他语言的角度去评论这样写的好坏。 兄弟,反了吧。变量全部定义在函数开头的部分,反而不利于阅读代码,因为你随用随定义可以在你的眼睛所及范围就能看到变量定义。如果都在函数开头的部分定义变量,你得翻到前面才能看到变量定义。当前现在IDE的智能提示都很强大,但还是不如立即看到变量定义方便。 网上盛传的一套API HOOK代码,能成功运行作用到NOTEPAD,怎么不能作用到自己最简单的程序呢? 怎么调用windows里的宽带连接,实现循环拨号功能 如何实现分页显示 //一个简单的LoadBitmap()的问题 关于菜单ID的问题 如何将WAV文件中指定开始、结束时间段的声音数据截成单独的文件? 编译是出错 wmpara=LOWORD(wParam);高手请看,小弟出学者! 请问今年的高级程序员什么时候考试? 内存泄露 VC中datagrid显示问题,在线等! MFC画图程序,怎么相交的地方变空白了? DirectX 的unresolved external symbol的错误
数组不管嵌套在几个 { 中定义,其在栈上的空间都是一进入函数就确定分配了的也不存在优化之说,编译器在编译期就已经计算好每个函数局部变量的占用的空间大小,进入函数的代码总是是push EBP ; mov EBP,ESP; sub ESP,大点儿的数组无非sub ESP减得多点,仅此而已
那就是 goto. 全部在开头定义变量后, goto可以满天飞,都不怕跳过了变量
你应该也属于那些部门下。所以你的leader才会这么要求你的吧。C和C++的习惯和书写规范是不大一样的。不能从其他语言的角度去评论这样写的好坏。
兄弟,反了吧。变量全部定义在函数开头的部分,反而不利于阅读代码,因为你随用随定义可以在你的眼睛所及范围就能看到变量定义。如果都在函数开头的部分定义变量,你得翻到前面才能看到变量定义。当前现在IDE的智能提示都很强大,但还是不如立即看到变量定义方便。