问题标签 [shallow-copy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
language-agnostic - 深拷贝和浅拷贝有什么区别?
深拷贝和浅拷贝有什么区别?
php - 如何在 PHP 中创建对象的副本?
似乎在 PHP 中对象是通过引用传递的。甚至赋值运算符似乎也没有创建对象的副本。
这是一个简单的、人为的证明:
在这两种印刷情况下,我都在“追求”
那么,如何通过值而不是引用将$a传递给set_b() ?
c# - 继承类的浅拷贝
好的,所以我有一个名为 Product 的抽象基类,一个继承 Product 的 KitItem 类和一个继承 KitItem 的 PackageKitItem 类。IE。
我已经加载了我的 KitItems,我需要加载 PackageKitItems 的集合,它们实际上是 KitItems 的浅表副本。
目前,我们正在 Product 构造函数中做一个对我来说感觉很糟糕的浅拷贝,如下所示:
我试过在 KitItem 上设置一个副本,如下所示:
并这样称呼它:
但我得到一个无效的演员表。我正在寻找实现这一目标的最佳方法的想法。
python - 无明显原因使用 Python 列表切片语法
我偶尔会看到 Python 代码中使用的列表切片语法,如下所示:
当然,这与以下内容相同:
还是我错过了什么?
c# - 对数组执行浅拷贝以调整其大小有什么影响?
如果我对深浅复制的理解是正确的,那么我的问题是不可能的。如果你有一个数组(a[10])并执行一个浅拷贝(b[20]),这不是不可能的,因为 b 中的数据不是连续的吗?
如果我完全错了,有人可以建议一种快速的方法来模仿(在 c# 中)c++ 执行 realloc 以调整数组大小的能力。
注意
我正在查看 System.Array 对象的 .Clone() 和 .Copy() 成员。
c# - 你将如何改进这个浅拷贝类?
我用一个静态方法编写了一个类,该方法将属性值从一个对象复制到另一个对象。它不关心每个对象是什么类型,只关心它们具有相同的属性。它可以满足我的需要,因此我不会对其进行进一步设计,但是您会做出哪些改进?
这是代码:
我使用它如下:
c# - 在 C# 中浅拷贝某些内容时,字符串如何工作?
字符串被认为是引用类型,但可以像值一样起作用。当手动或使用 MemberwiseClone() 进行浅拷贝时,如何处理字符串?它们是否被认为是独立于副本和母版的?
c# - 浅拷贝 - 引用类型异常性质
我无法理解下面给出的两组代码片段的输出。怎么没有真正理解浅拷贝的概念。怎么解释?
班级:
代码片段 1:
输出:名称1 11
怀疑:字符串不是引用类型。那么为什么 p2.Name 在片段 1 中打印为“Name1”
代码片段 2:
输出:名称1 1
c# - 关于C#中数组浅拷贝的问题
只是为了确保我正确理解了引用类型的浅表副本,并且我没有在这里构造巨大的内存泄漏:
这将首先将引用复制到 rtbLog.Lines 中的字符串到行中。然后它将前 100 个引用从行复制到一个新的字符串数组中。
这意味着 rtbLog.Lines 最初引用的数组、最初由行引用的数组(在调整大小之前),最后是任何不包含在行中的字符串(在调整大小之后),都会被垃圾收集。(我希望这是有道理的)
正确的?
c# - 在 C# 中进行浅拷贝的最快方法
我想知道在 C# 中进行浅拷贝的最快方法是什么?我只知道有两种方法可以做浅拷贝:
- 会员克隆
- 一个一个地复制每个字段(手动)
我发现(2)比(1)快。我想知道是否有另一种方法来进行浅拷贝?