Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么.freeze和.dup SomeGem::VERSION?_Gem_Rubygems - Fatal编程技术网

为什么.freeze和.dup SomeGem::VERSION?

为什么.freeze和.dup SomeGem::VERSION?,gem,rubygems,Gem,Rubygems,在阅读源代码时,我在gem spec文件中发现: Gem::Specification.new do|s| s、 名称='高压' s、 版本=高电压::version.dup 在lib/high_voltage/version.rb文件中: 模块高电压 VERSION=“2.2.1”。冻结 结束 这样做的好处是什么?根据,它使字符串不可变,因此不会意外更改

在阅读源代码时,我在gem spec文件中发现:

Gem::Specification.new do|s|
s、 名称='高压'
s、 版本=高电压::version.dup
lib/high_voltage/version.rb
文件中:

模块高电压
VERSION=“2.2.1”。冻结
结束
这样做的好处是什么?

根据,它使字符串不可变,因此不会意外更改