3

power!Ruby のFixnumクラスのメソッドに感嘆符が付いているのはなぜですか? 慣例により、名前が ! で終わるメソッドは 潜在的に危険です (たとえば、何らかの方法でインスタンスを変更する可能性があります)。

gsubのとgsub!の違いは理解できますがString、 はどうなっていpower!ますか? Fixnumインスタンスを変更したり、他の「危険な」アクションを実行したりするようには見えません。結果を返すだけです。

4

1 に答える 1

2

これは、API の不一致です。何も心配する必要はありません。

これ!は、ルールではなく、破壊的なメソッドの単なる規則です。

于 2009-12-26T23:16:40.373 に答える