看到网上有好多人说VB中使用中文做变量名 如:dim 总_分 as integer, 如这样的定义会有安全隐患,我认为根本没有这个担忧,当在中文系统中使用VB6生成EXE文件时,编译器其实并不是直接以这个中文变量直接放在程序当中,而是把这个中文变量转换为相对应的地址编码,这个地址已没有中文含义,中文在程序编制过程中只不过是个代名词而已,有做过反汇编的人都知道,变量在其生成EXE文件时都有其内部的命名规则,不管是英文还是中文都只是代名词而已。当然用英文做变量更为方便快捷,若有人不喜欢用英文做变量,而要用中文,也不需要担心,放心使用,这些问题VB编译器会帮我们处理好的。

解决方案 »

  1.   

    现在很多语言都支持中文的,不过你要是去面试用中文变量写一段代码,那基本就over了。。
      

  2.   

    我用很多的中文变量
    因为一看就知道干什用的
    甚至连 Class名 都用中文 
      

  3.   

    看具体情况了,如果是个初学者而且英文实在太烂那么可以使用,不过还是建议使用汉语拼音好点。如果一个项目是中日英三方开发的,里面夹杂了中文变量及注释还有日文的还有英文的,那么代码管理员是不是要疯了?而且人家的开发环境及os不一定支持的,比如默认的日文环境里打开中文的vb工程里面中文就会乱码,那英文的环境更不谈了。再说了,你写的优秀程序如果开源那只能国内的友友分享了,国外的朋友估计下载好解压然后就delete了,岂不遗憾。对于一个代码写多了的人来说根本不会在这问题上纠结的。理论是一回事,实际应用又是另外一回事。
      

  4.   

    可以用,没什么影响,只不过是目前主流的语言都是外国的。所以中间穿插着中文变量看起来有点怪怪的罢了,如果你的软件是用在国内的,我觉得无所谓的。我见过一套温湿度监控软件,VFP编写的(已经够诧异的了),里边的变量基本都是挂中文的。用着发现也没什么问题。
      

  5.   

    实实在在的缺点有二:
    1)打字慢
    2)兼容性问题或命名不一致
     变量在编译时的确转成了地址偏移,但是 COM 对象的 TLB 定义中还是保留命名的,那么:
     a)如果对象成员也用中文命名,那么在非中文环境下就存在兼容性隐患;
     b)如果对象成员用英文命名、变量用中文,那么同一个名称就有不同的命名,不仅维护不便,而且用中文命名的意义就不大了(还是要记一套英文命名)。至于其他的多语言协作开发、不够国际化等问题不是所有的项目都碰得到。