質問編集履歴
3
変数は参照?
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,8 +1,8 @@
|
|
1
|
-
代入演算子をオーバーロードしようと思いましたが、それは、自分が調べた以上では不可能です。これは、変数に
|
1
|
+
代入演算子をオーバーロードしようと思いましたが、それは、自分が調べた以上では不可能です。これは、pythonにおける変数とは参照であって、変数に実体が格納されているわけではないので、代入はすべて、右辺の参照を左辺に代入するという操作だからですよね?
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
-
例えば、親クラスのオブジェクトpareと子クラスのオブジェクトchildがあったとして、pareの値をchildにコピーしたい時、
|
5
|
+
例えば、親クラスのオブジェクトを格納している変数pareと子クラスのオブジェクトを格納している変数childがあったとして、pareの値をchildにコピーしたい時、
|
6
6
|
|
7
7
|
child=pare
|
8
8
|
|
2
用語が違っていたので修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,13 +1,13 @@
|
|
1
|
-
代入演算子をオーバーロードしようと思いましたが、それは、自分が調べた以上では不可能です。これは、変数に型がないため、全ての代入演算子は左辺の変数
|
1
|
+
代入演算子をオーバーロードしようと思いましたが、それは、自分が調べた以上では不可能です。これは、変数に型がないため、全ての代入演算子は左辺の変数を右辺の値で上書きする、という一律の挙動になっているからですよね?
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
-
例えば、親クラスと子クラスがあったとして、
|
5
|
+
例えば、親クラスのオブジェクトpareと子クラスのオブジェクトchildがあったとして、pareの値をchildにコピーしたい時、
|
6
6
|
|
7
|
-
|
7
|
+
child=pare
|
8
8
|
|
9
9
|
というような記述を実装できないので、コピーメソッドを用意し、
|
10
10
|
|
11
|
-
|
11
|
+
child.copy(pare)
|
12
12
|
|
13
13
|
というような記述をしなければいけませんよね?
|
1
わかりにくかったところを修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,4 +6,8 @@
|
|
6
6
|
|
7
7
|
子クラス=親クラス
|
8
8
|
|
9
|
-
というような記述を実装できないので、コピーメソッドを用意し
|
9
|
+
というような記述を実装できないので、コピーメソッドを用意し、
|
10
|
+
|
11
|
+
子クラス.copy(親クラス)
|
12
|
+
|
13
|
+
というような記述をしなければいけませんよね?
|