[問題] constructor

作者: sean72 (.)   2014-12-16 15:49:41
import socket
class TCP:
def __init__(self, ip, port):
self.abc = 'hello'
s = socket.socket(xxxxxxxx)
s.connect(ip, port) # use python lib to create tcp connection
conn = TCP(192.168.1.1, 1234)
上面是一段pseudo code
請問如果s.connect()沒有成功
python raise err
__init__()沒有完成
變數conn也不會成功的allocate memory
但是self.abc這個變數呢? 會默默地吃掉一些記憶體嗎?
應該不會才對吧? 因為self, 也就是conn沒有成功的init
作者: uranusjr (←這人是超級笨蛋)   2014-12-16 16:32:00
其實事情比你想的要複雜很多, 但要解釋清楚很麻煩在這個例子裡 Python 會幫你把它搞定, 不用想太多

Links booklink

Contact Us: admin [ a t ] ucptt.com