LINUX.ORG.RU

История изменений

Исправление evilface, (текущая версия) :

Это было бы более-менее осмысленно в языках с динамической типизацией. Вот так:

…
    def value(val=None):
        if val is None:
            return self.val
        self.val = val
…

ValueOwner.value(10)
a = ValueOwner.value()

И то только если val всегда предполагает хранение какого-то значения.
А в данном варианте это плохо. Далеко не всегда существует некое невалидное значение (как "-1").

Исправление evilface, :

Это было бы более-менее осмысленно в языках с динамической типизацией. Вот так:

…
    def value(val=None):
        if val is None:
            return self.val
        self.val = val
…

ValueOwner(10)
a = ValueOwner.value()

И то только если val всегда предполагает хранение какого-то значения.
А в данном варианте это плохо. Далеко не всегда существует некое невалидное значение (как "-1").

Исходная версия evilface, :

Это было бы более-менее осмысленно в языках с динамической типизацией. Вот так:

…
    def value(val=None):
        if val is None:
            return self.val
        self.val = val
…

ValueOwner(10)
a = ValueOwner.value()

И то только если val предполагает хранение какого-то значения.
А в данном варианте это плохо. Далеко не всегда существует некое невалидное значение (как "-1").