3 回答

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超3個贊
感嘆號意味著很多事情,有時除了“這是危險的,要小心”之外,你無法從它中分辨出很多東西。
正如其他人所說的,在標(biāo)準(zhǔn)方法中,它通常用于指示導(dǎo)致對象自身發(fā)生變異的方法,但并不總是這樣。請注意,許多標(biāo)準(zhǔn)方法都會更改接收方,并且沒有感嘆號(pop
,?shift
,?clear
),一些帶有感嘆號的方法不會改變它們的接收器(exit!
)。
其他庫可能會以不同的方式使用它。在Rails中,感嘆號通常意味著該方法將在失敗時拋出異常,而不是默默地失敗。
這是一個命名慣例,但許多人使用它的方式微妙不同。在您自己的代碼中,一個很好的拇指規(guī)則是每當(dāng)一個方法做“危險”的事情時使用它,特別是當(dāng)存在兩個同名的方法并且其中一個比另一個更“危險”時?!拔kU”可能意味著幾乎任何東西。

TA貢獻(xiàn)2051條經(jīng)驗(yàn) 獲得超10個贊
這個命名約定是從方案.
1.3.5命名約定
按照慣例,總是返回布爾值的過程名稱通常以“`?‘”結(jié)尾。這類過程稱為謂詞。
按照慣例,將值存儲到以前分配的位置的過程名稱(見3.4節(jié))通常以“`!‘”結(jié)尾。這種程序稱為突變程序。按照約定,突變過程返回的值未指定。
- 3 回答
- 0 關(guān)注
- 933 瀏覽
添加回答
舉報(bào)