gpt4 book ai didi

ruby - 在 Ruby 中,为什么我需要定义一个散列,但不需要定义变量?

转载 作者:数据小太阳 更新时间:2023-10-29 08:14:59 25 4
gpt4 key购买 nike

我是说,我不声明

my_var = new variable

或类似的东西。我只是跟着

my_var = 1;

同样,为什么我不能

books["War and peace"] = :masterpiece

为什么要提前定义?

books = {}

最佳答案

books["War and peace"] = :masterpiece 使用 "War and peace"调用 books 上的 []= 方法peace":masterpiece 作为参数。如果 books 不存在,则无法对其调用方法。

或者以不同的方式解决这个问题:如果 ruby​​ 确实做了一些魔术来自动初始化变量,那么当您对它们使用 []= 时,ruby 应该如何知道您想要 books 是上面例子中的哈希?任何类都可以有 [][]= 运算符,它们接受字符串作为索引。

关于ruby - 在 Ruby 中,为什么我需要定义一个散列,但不需要定义变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6903658/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com