teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

変数は参照?

2020/12/17 08:40

投稿

Watching
Watching

スコア56

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

2

用語が違っていたので修正

2020/12/17 08:39

投稿

Watching
Watching

スコア56

title CHANGED
File without changes
body CHANGED
@@ -1,7 +1,7 @@
1
- 代入演算子をオーバーロードしようと思いましたが、それは、自分が調べた以上では不可能です。これは、変数に型がないため、全ての代入演算子は左辺の変数の中身を右辺の値で上書きする、という一律の挙動になっているからですよね?
1
+ 代入演算子をオーバーロードしようと思いましたが、それは、自分が調べた以上では不可能です。これは、変数に型がないため、全ての代入演算子は左辺の変数を右辺の値で上書きする、という一律の挙動になっているからですよね?
2
2
 
3
- 例えば、親クラスと子クラスがあったとして、親クラス変数子クラス代入ようと思っとき
3
+ 例えば、親クラスのオブジェクトpareと子クラスのオブジェクトchildがあったとして、parechildコピーしたい時
4
- 子クラス親クラス
4
+ childpare
5
5
  というような記述を実装できないので、コピーメソッドを用意し、
6
- 子クラス.copy(親クラス)
6
+ child.copy(pare)
7
7
  というような記述をしなければいけませんよね?

1

わかりにくかったところを修正

2020/12/16 23:32

投稿

Watching
Watching

スコア56

title CHANGED
File without changes
body CHANGED
@@ -2,4 +2,6 @@
2
2
 
3
3
  例えば、親クラスと子クラスがあったとして、親クラスの変数を子クラスに代入しようと思ったとき、
4
4
  子クラス=親クラス
5
- というような記述を実装できないので、コピーメソッドを用意しなければいけませんよね?
5
+ というような記述を実装できないので、コピーメソッドを用意し
6
+ 子クラス.copy(親クラス)
7
+ というような記述をしなければいけませんよね?