问题标签 [cloning]

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.

0 投票
3 回答
1037 浏览

java - Java 返回副本以隐藏未来的更改

在 Java 中,假设您有一个包装ArrayList对象(或任何集合)的类。

您将如何返回这些对象之一,以使调用者不会看到将来对 ArrayList 中的对象所做的任何更改?

即,您想返回对象的深层副本,但您不知道它是否可克隆。

0 投票
8 回答
65226 浏览

c# - 在 C# 中进行浅拷贝的最快方法

我想知道在 C# 中进行浅拷贝的最快方法是什么?我只知道有两种方法可以做浅拷贝:

  1. 会员克隆
  2. 一个一个地复制每个字段(手动)

我发现(2)比(1)快。我想知道是否有另一种方法来进行浅拷贝?

0 投票
1 回答
377 浏览

mercurial - 在 Mercurial 中克隆存储库的目的是什么?

我为 php 设置了 xampp。

我在 D:/xampp/htdocs/cart 创建了一个新的存储库,我正在使用 Mercurial 和 Netbeans。

我正在为本地和孤独的开发人员工作。

购物车已安装并在我的本地主机 hXXp://localhost/cart 上运行

如果我对克隆存储库进行更改,因为它不是在本地主机上运行的目录,它有什么用?一切都驻留在我的本地计算机上。

我是 DVCS 的新手。

克隆存储库的目的是什么?

0 投票
1 回答
2407 浏览

silverlight - 如何在 Silverlight 中克隆路径资源?

我在我的 Xaml 文件中定义了一个资源,如下所示:

我希望能够将此路径(以及其他几个)的多个“实例”添加到 StackPanel。当然,我不能简单地将“myPath”添加到面板,因为它已经是另一个容器的子容器。

但是,我似乎也无法克隆路径。我试过了:

但没有运气......关于价值超出预期范围的例外情况。

最后,我尝试深入研究 source.Data (一个 PathGeometry),但它不包含 PathFigures ......我不知道为什么,因为如果我将路径从资源部分直接复制到面板,它会呈现。

是什么赋予了?

谢谢,塞尔吉奥

0 投票
5 回答
1723 浏览

.net - 为什么克隆(在 .NET 中)如此困难?

过去我需要克隆对象,结果发现它们没有实现Clone()方法,迫使我手动完成(创建一个新实例并将所有属性从原始实例复制到新实例)

为什么克隆不像复制分配对象的内存块那样容易,因此Clone在类中拥有方法object,让 .NET 中的所有类都继承它?

0 投票
4 回答
3858 浏览

lua - 克隆 Lua 状态

伙计们,有没有办法克隆一个 Lua 状态?

在我的游戏应用程序中,Lua 虚拟机的初始化过程非常繁重(大约 1 秒,因为一次加载了许多脚本)。我为每个自治代理都有一个单独的 Lua VM,一旦创建了代理,它的 Lua 初始化会严重影响 FPS。

我正在考虑以下模式:如何保持“预分叉”Lua 状态,然后为每个代理简单地克隆?可能吗?

0 投票
5 回答
7874 浏览

asp.net-mvc - 是否可以复制/克隆 Web 请求的 HttpContext

克隆当前请求的 HttpContext 实例的最简单方法是什么?

我正在用Asp.net MVC v1开发一个应用程序。我将常规的 PartialView 功能升级为实际上具有行为非常相似但有自己的上下文的子控制器。当您使用 PartialViews 时,您必须在主视图的控制器操作中填充部分视图的视图数据。我创建了自己的功能,可以从视图中调用控制器操作。这样我得到:

  • 我不必在主视图的控制器操作中提供子视图的数据
  • 子控制器方法可以操作更封装的数据,与其他视图/控制器没有任何关系

问题是每个子控制器请求都使用HttpContext。因此,当我在子控制器中设置一些 HttpContext.Item 时,它实际上填充了实际请求的 HttpContext。

这就是为什么我要克隆 HttpContext。我已经在使用:

但这除了请求和响应之外没有设置任何其他内容。但我可能还需要其他属性和集合......比如会话、项目、用户......等。

0 投票
4 回答
5205 浏览

delphi - 克隆 TStringGrid 组件

我开始学习德尔福。所以我决定从头开始编写一个像 MS Excel 这样的应用程序。在一个新的 Form1 中,我确实放置了一个仅包含 1 页的 TPageControl 组件。在那个页面中,我确实放置了一个 TAdvStringGrid 和一个带有一些按钮(button1、button2)的 TPanel 和一个 Popup1 菜单,用于定义网格上的一些操作,如复制单元格、复制行、删除行等。对于那个 StringGrid,还有,我已经定义了一些属性,比如颜色、字体等。我在主窗体中添加了一个带有按钮的工具栏,以便向 PageControl 添加更多页面。该按钮的 OnClick 方法定义了两个操作:
1) 将新的 Page2 添加到 PageControl,以及 2) 在新创建的 Page2 中添加新的 StringGrid。

在 Tpagecontrol 的新页面中创建的新的(运行时定义的)StringGrid 应该继承(获取、复制、克隆、复制)在设计时已经在第一页中定义的 StringGrid 父级的属性和方法,并且应该能够调用PopUp1 菜单就像 StringGrid 父级一样。我们如何做到这一点?

一开始,我以为我应该使用 assing() 复制 StringGrid 属性,但是当使用这种方法时,当鼠标右键单击新的 StringGrid 时不会弹出弹出菜单...和按钮(button1 和 button2) Form1 仅适用于第一个 StringGrid,但不适用于新添加的 StringGrid。我确实在某处读到,为了解决这个问题,我可以通过使用写入和读取 TMemoryStream 来复制 StringGrid 组件(将父字符串网格保存到内存流中,创建一个新的字符串网格,然后将该内存流读入新创建的字符串网格),所以我做了,但是当程序执行这个组件克隆方法时,我得到一个运行时错误。:-(

我确实仔细检查了帮助。没有找到关于该主题的内容。似乎没有任何 Delphi 组件库或第三方组件可以处理此类任务。有人可以帮忙吗?:o)

0 投票
0 回答
339 浏览

wpf - WPF - 克隆对象并将它们放入 XPS 文档时出错

这是底线:我试图避免使用 RDLC/SSRS,而是从我的 XAML 创建 XPS 文件。

我在这里合并了各种文章中的代码片段,我正在 (1) 从我的页面克隆我需要的 XAML 对象,以及 (2) 将它们传递到 XPS 对象中的新页面

这个过程似乎适用于我仍然可以使用代码修改的非数据绑定对象。这是一个简单的示例,展示了我如何克隆现有标签:

但是,当我将相同的代码应用于包含 DataContext 的对象时,它不会呈现内容。它将呈现对象本身,就像它可能显示列表框的轮廓或数据网格的一个空列一样,但它不会显示任何其他数据。我已经确认我正在从渲染中提取对象的页面正确呈现,只有在克隆和 XPS 渲染中对象数据才会丢失。

帮助。

0 投票
1 回答
462 浏览

wpf - WPF - 克隆数据绑定对象?

我正在尝试使用如下代码克隆 WPF 绑定对象(列表框)

但是,当您查看 listXaml 字符串时,我注意到我的数据绑定指令,对于列表本身和 DataTemplate 都是空白的,不再存在。是否有理由将其删除?是否有另一种方法来克隆将保留所有设置的对象?