命名就和char szTmpBuf[512];差不多做二次开发的时候还遇到过拼音命名的

解决方案 »

  1.   

    记得effctive c++上提到不要过早定义变量,使用的时候才去定义
      

  2.   

    呵呵,那是囧的很但是数组。不是最好要区别一下吗? 有的加了ar有的用g ,g_不是全局变量的吗?那不就二义性了
      

  3.   

    像szTmpBuf这样的。是否要在函数开始出一次性定义,只在if里定义,尤其是你的命名还不能让人一下明白意图
      

  4.   

    不能肯定。问你boss一次性写在函数开始,我觉得没必要,影响代码逻辑。
      

  5.   


    数组不管嵌套在几个 {  中定义,其在栈上的空间都是一进入函数就确定分配了的也不存在优化之说,编译器在编译期就已经计算好每个函数局部变量的占用的空间大小,进入函数的代码总是是push EBP ; mov EBP,ESP; sub ESP,大点儿的数组无非sub ESP减得多点,仅此而已
      

  6.   

    sadgas点噶发挥第三方工具和认同
      

  7.   

    还有一个好处:
    那就是 goto. 全部在开头定义变量后, goto可以满天飞,都不怕跳过了变量
      

  8.   

    如果C的话没问题,C++的话就不合适了。写在开头那么类类型的局部变量都会构造+析构一次的随用随声名的话,提前return是不会构造+析构下面没执行到的对象的。
      

  9.   

    似乎不是这样。曾用过IAR的编译器,从生成的MAP文件看,不同的优化等级,会导致函数使用的栈深度不同。所以我感觉是否一次性分配出来和优化等级有关。
      

  10.   

    因为华为大部分的业务都是C作为开发语言的。
    你应该也属于那些部门下。所以你的leader才会这么要求你的吧。C和C++的习惯和书写规范是不大一样的。不能从其他语言的角度去评论这样写的好坏。
      

  11.   


        兄弟,反了吧。变量全部定义在函数开头的部分,反而不利于阅读代码,因为你随用随定义可以在你的眼睛所及范围就能看到变量定义。如果都在函数开头的部分定义变量,你得翻到前面才能看到变量定义。当前现在IDE的智能提示都很强大,但还是不如立即看到变量定义方便。