История изменений
Исправление 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").