簡體   English   中英

成員克隆比創建新對象更便宜嗎?

[英]Is Memberwise cloning less expensive than creating a new object?

我正在閱讀有關Prototype創建設計模式的信息,並且發現了一個信息,指出克隆對象的成本要低於創建一個新的 - 通過調用new運算符。

這是真的,如果是的話,為什么呢?

謝謝

克隆確實需要創建一個新對象,因此您不會在初始化的創建部分節省太多。 但是,您可以保存初始化的其他元素:

  • 如果對象需要填充集合,並且構造函數需要未知數量的元素,則克隆例程可以通過預先調整集合大小來節省一些處理。
  • 如果對象在其構造函數中創建不可變對象,則原型可以將對其自己的對象的引用直接設置到結果對象中。 由於這些引用的內部對象是不可變的,因此可以共享它們。 這樣,您的系統將節省創建這些依賴對象。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM