摘要:
如果要定義a+b,也應該定義a+=b:在定義二進制算術操作符時,也應該提供操作符的指派形式,并且應該盡量減少重複,提高效率。
一般而言,對于某個二進制操作符@(可能是+、-、*等),應該定義其指派形式,使用a@=b和a=a@b具有相同的含義(隻不過第一種形式可能更高效,它隻計算一次a)。實作這一目标的标準方法是用@=來定義@,如下所示:
這兩個函數是協同工作的。指派形式完成實際工作并傳回其左參數。非指派形式從lhs建立一個臨時變量,然後調用指派形式修改該變量,并傳回它。
摘要:
如果要定義a+b,也應該定義a+=b:在定義二進制算術操作符時,也應該提供操作符的指派形式,并且應該盡量減少重複,提高效率。
一般而言,對于某個二進制操作符@(可能是+、-、*等),應該定義其指派形式,使用a@=b和a=a@b具有相同的含義(隻不過第一種形式可能更高效,它隻計算一次a)。實作這一目标的标準方法是用@=來定義@,如下所示:
這兩個函數是協同工作的。指派形式完成實際工作并傳回其左參數。非指派形式從lhs建立一個臨時變量,然後調用指派形式修改該變量,并傳回它。