首页 > 编程语言 >编程中常见的 Foo 是什么意思?

编程中常见的 Foo 是什么意思?

时间:2023-03-12 15:12:22浏览次数:36  
标签:编程 bar foo 常见 占位 使用 Foo

“Foo” 是一个编程中经常使用的占位符,它没有特定的含义,只是作为一个通用的标识符来使用,这种用法类似于数学中的"x"或"y"。

这个词最初可能源于20世纪60年代MIT的人工智能实验室,当时在使用LISP编程语言时,有些人在编程时使用了"Foobar"作为占位符。后来,"Foo"成为了一个更为普遍的占位符,因为它更短,更易于记忆和书写,于是你会经常看到 foo 或 bar、 foo=bar

因此,当程序员在写代码时使用"Foo"这个单词时,通常是指一个不重要的占位符或者临时的变量名。

简单来说,foo 就是习惯性用来做示例的类名或者函数方法名,指代一个没有特定意义的实体。就像我们想拿人举例子,总要先起个名字,然后就喜欢用什么“张三”,“李四”之类的。

"foo" 这个词的确有很多不同的起源说法。以下是一些可能的来源:

"Foo" 来自于 "FUBAR",这个说法已经在前面提到过了。FUBAR 是 "Fucked Up Beyond All Recognition" 的缩写,意为 "完全搞砸了"。"Foo" 可能是在这个词的基础上发展而来的。

"Foo" 作为占位符的使用可以追溯到 1965 年,当时计算机科学家 Melvin Conway 在一篇论文中使用了 "foo" 和 "bar" 作为变量名。他认为这些词听起来有趣,可以使代码更易于阅读。

"Foo" 来自于纽约的一个餐厅,当时计算机科学家们在那里举行了一个会议。他们使用 "foo" 来代表那个餐厅的名字,后来这个词就成为了占位符的代名词。
总之,"foo" 是一个在计算机科学中常用的占位符,它没有具体的含义,只是用来填充空缺。

标签:编程,bar,foo,常见,占位,使用,Foo
From: https://www.cnblogs.com/longmo666/p/17208179.html

相关文章

  • 并发编程-信号量
    importrandomimporttimefromthreadingimportThread,Semaphoresm=Semaphore(5)'''semaphore信号量可以通过内置计数器来控制同时运行线程的数量每当调用......
  • C++11异步编程(std::async, std::future, std::packaged_task, std::promise)
    文章目录​​1.std::future概述含义​​​​2.std::future​​​​2.std::packaged_task​​​​2.std::promise​​1.std::future概述含义C++0x提供了future和promise来简......
  • 【编辑器】常用编程环境使用感受20190804
    一、编辑器1、Vim/Emase又被称之为神器:编辑器之神vs神之编辑器学习使用成本高and定义所有功能2、Sublime/Vscode/Atom现在编辑器,有以下特点:跨平台,颜值高,性能佳3、Note......
  • 综合案例常见问题
    1.报找不到类SqlSessionUtil或者未初始化【1】target目录下是否有该类【2】解决问题:执行maven的clean命令重构项目2.mybatis映射文件【1】映射文件中的namespa......
  • 学习ASP.NET Core Blazor编程系列二十八——JWT登录(3)
    学习ASP.NETCoreBlazor编程系列文章之目录学习ASP.NETCoreBlazor编程系列一——综述学习ASP.NETCoreBlazor编程系列二——第一个Blazor应用程序(上)学习A......
  • C#高级编程2
        C#快速构建代码块简写功能总结表格简写功能示例prop创建属性代码块publicintMyProperty{get;set;}cw创建对Console.WriteL......
  • shell编程语言-预交互脚本expect
          -bash-4.2#catftp-expect.shspawnftp192.168.56.1expect"):"send"ftp\r"expect"Password:"send"123456\r"expect"ftp>"send"putftp-expect......
  • 编程高手进阶参考
    编程高手箴言-读书笔记 编程高手箴言-读书笔记 目录编程高手箴言-读书笔记1程序点滴1.1程序不等于软件1.1.2认清自己的发展1.2高手是怎样练成的1......
  • Zabbix编译常见报错解决办法
    一、CentOS编译报错以下操作可能需要第三方源,参考此进行安装第三方Yum源rpm-ivh  http://ftp.sjtu.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm1、confi......
  • 基于神经网络的传递函数控制器matlab实现,神经网络自己编程实现不使用matlab的工具箱
    1.算法描述       神经控制器在在实时控制系统中起着“大脑”的作用。神经网络具有自学习和自适应等智能特点,因而非常适用于控制器设计。对于复杂非线性系统,神经控......