[2217] Re: 辞書に配列が含まれている場合の処理について

投稿日 2018/09/02(Sun) 14:31:58
投稿者 通りすがり
参照先

基本的に、辞書や配列の内容が、複製可能かどうかは、それを利用するアプリケーションに依存するため、汎用的な方法はありません。
いわゆる、値型は、単純にコピーできますが、参照型はケースバイケースになります。
(今回は、辞書に配列という参照型を入れているケースです)
うまくゆかない例は
・ファイル型など、コピーできないものを格納している
・1つの実態への複数の参照を持っている
・循環参照している
これらを確実にコピーする方法はなく、アプリケーション毎にどうしたいのかにあわせて、自分でじっそする必要があります。逆に、これらをチェックしながらコピー(クローン)するように実装するのも、難しいということになります。
----
Aという辞書を作る
Bは、{1,2,3}
A(「あ」)は、B
A(「い」)は、B
---
という場合、汎用的にBの実態を正しく戻すには、辞書内のすべての値について、他の値と同じ実態かどうかを総当たりで調べなくてはならくなります。が、多くの場合、それはコストの高い、無駄なチェックになります。

基本的には、配列や辞書などのコンテナのクローンは、自身で実装する方針をお勧めします。
(文字列や数字の配列とか、文字と数字のみを使用した辞書だけ、ちょっと楽ができる ぐらいの感覚が良いかと思います)


関連一覧ツリー

をクリックするとツリーを一括表示します)

返信フォーム

(この投稿に返信する場合は下記フォームから投稿して下さい)
(1MBまで)
(英数字で8文字以内)

- 投稿修正/削除フォーム -
処理 No パスワード

▲ページの先頭へ

- WebForum -