我在这里阅读了“Ruby编程语言”一书中的文档,并且不明白这里文档的目的是什么,以及何时将它用于生产代码。如果有人能够解释并提供一些使用示例,我会很高兴。
的问候,
答案 0 :(得分:8)
在支持它们的任何语言中,heredoc是制作大字符串文字的便捷方式。
采取以下设计的Ruby脚本,它带有你的名字并输出一个C程序的源代码,告诉你你好:
#!/usr/bin/env ruby
name = $*[0]
unless name
$stderr.puts "Please supply a name as the first argument to the program"
exit 1
end
source = <<EOF
#include <stdio.h>
int main()
{
puts("Hello, #{name}!");
return 0;
}
EOF
puts source
除了heredoc之外,制作源代码的另一个选择是逐行指定它,这变得乏味且可能容易出错(特别是当你有嵌入的引号时)。