You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何计算机编程中优先使用下划线(_)而非短横线(-)?(针对对象命名)

为啥编程里对象名称优先用下划线而非短横线?

哈哈,这个问题问得太戳痛点了——按住Shift打下划线确实比直接敲短横线麻烦,但为啥编程圈偏偏认准下划线?其实背后全是语法规则、历史习惯和实用性的综合考量,给你掰扯清楚:

  • 语法冲突是核心硬伤
    绝大多数编程语言里,短横线是减法运算符!比如你写my-variable,解释器会直接把它当成my - variable来解析,瞬间就会报错。比如在Python里试试:

    my-variable = 10  # 直接触发SyntaxError
    

    而下下划线my_variable就完全没这个问题,编译器一眼就能识别这是个完整的标识符,不会和任何运算符混淆。

  • 历史习惯的惯性传承
    早期的编程语言(比如C语言)就明确规定:标识符只能由字母、数字和下划线组成,短横线根本不在允许范围内。后来很多编程语言(Java、Python、Go等)都继承了这个设计,开发者用得顺手了,自然就形成了行业默认的命名习惯——新人入行跟着学,老程序员延续习惯,下划线就成了“标准操作”。

  • 可读性与区分度更优
    虽然短横线也能分隔单词,但在不少字体里,短横线和数字1、小写字母l长得特别像,快速扫代码的时候很容易看错。而下下划线在任何字体里都醒目清晰,比如user_id比user-id更容易一眼区分出是两个单词组成的变量名,能减少阅读代码时的视觉误差。

  • 兼容场景更广泛
    在命令行参数、配置文件等场景里,短横线有特殊用途(比如--help、-v),如果对象名称用短横线,很容易和这些特殊语法混淆。而下下划线在几乎所有编程相关场景里都是“安全字符”,不管是变量名、函数名还是文件名,用下划线都不会踩语法坑。

当然也有例外,比如CSS里的类名my-class就是标准写法,但那是因为CSS语法里不存在减法运算符,短横线不会引发冲突。但在绝大多数编程语言的对象名称里,下划线就是更安全、更通用的选择——就算按Shift麻烦点,总比写代码报错、排查半天强嘛!

内容的提问来源于stack exchange,提问作者Hem

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 10:05:27