📜  红宝石 |预定义变量和常量(1)

📅  最后修改于: 2023-12-03 15:11:37.077000             🧑  作者: Mango

红宝石 | 预定义变量和常量

什么是预定义变量和常量?

在 Ruby 中,预定义变量和常量是预先定义并封装在编程语言中的变量和常量,它们可以直接在任何地方使用,无需另外定义或初始化。

预定义变量
特殊全局变量

Ruby 中的一些特殊全局变量:

  • $!:最近的异常对象
  • $@:当前调用栈
  • $&:最近的匹配字符串
  • $~:最近的匹配结果
  • $n:最近的匹配组(n 是一个数字)

例如:

begin
  # 一些代码
rescue => e
  puts "发生错误:#{e.message}"
  puts "跟踪信息:#{e.backtrace.join(", ")}"
end

在这个例子中,我们使用了特殊全局变量 $!$@

环境变量

Ruby 中的几个重要的环境变量:

  • $PATH:查询可执行文件所在的目录列表
  • $HOME:当前用户的主目录
  • $PWD:当前工作目录
  • $ARGV$*:命令行参数数组

例如:

puts "当前工作目录是 #{$PWD}"
puts "第一个参数是 #{ARGV.first}"

在这个例子中,我们使用了环境变量 $PWD 和命令行参数数组 $ARGV

预定义常量
特殊常量

Ruby 中的一些特殊常量:

  • truefalse:布尔值 truefalse
  • nil:空值
  • __FILE__:当前文件名
  • __LINE__:当前行号

例如:

puts "当前文件是 #{__FILE__}"
puts "当前行号是 #{__LINE__}"

在这个例子中,我们使用了特殊常量 __FILE____LINE__

Math 常量

Ruby 中提供了一些数学相关的预定义常量,可以在 Math 模块中使用:

  • Math::PI:圆周率
  • Math::E:自然常数

例如:

radius = 10
circumference = 2 * Math::PI * radius

在这个例子中,我们使用了 Math 常量 Math::PI

总结

本文介绍了 Ruby 中的预定义变量和常量,包括特殊全局变量、环境变量、特殊常量和 Math 常量。这些变量和常量可以帮助程序员在编写 Ruby 代码时更加方便和高效地进行操作。