c# – 如何在.net核心中执行String.Copy?

c# – 如何在.net核心中执行String.Copy?,第1张

概述在将.net框架应用程序移植到.net核心应用程序时,有一些使用 String.Copy来复制字符串.但看起来这个方法从 .net core中删除了,所以你如何在.net核心应用程序中复制一个字符串,因此,它也不存在于uwp中.赋值字符串b = a;在.net核心中意味着与.netframework不同的东西? 该代码中使用了该副本: public DataDictionary(DataDicti 在将.net框架应用程序移植到.net核心应用程序时,有一些使用 String.Copy来复制字符串.但看起来这个方法从 .net core中删除了,所以你如何在.net核心应用程序中复制一个字符串,因此,它也不存在于uwp中.赋值字符串b = a;在.net核心中意味着与.netframework不同的东西?

该代码中使用了该副本:

public DataDictionary(DataDictionary src)        :this()    {        this.Messages = src.Messages;        this.FIEldsByname = src.FIEldsByname;        this.FIEldsByTag = src.FIEldsByTag;        if (null != src.MajorVersion)            this.MajorVersion = string.copy(src.MajorVersion);        if (null != src.MinorVersion)            this.MinorVersion = string.copy(src.MinorVersion);        if (null != src.Version)            this.Version = string.copy(src.Version);    }
解决方法 字符串的赋值不是创建副本. a = b只是将两个变量的引用设置为相同的内存段. string.copy实际上复制了字符串,因此引用不再相同.

我怀疑你是否需要string.copy.你为什么想要另一个参考?我想不出你想要的任何常见情况(unless you are using unmanaged code).由于字符串是不可变的,因此您不能只更改字符串的内容,因此在这种情况下复制是无用的.

鉴于您使用string.copy的代码进行更新,我会说使用string.copy是没用的.如果仅在托管代码中使用DataDictionary,则可以执行简单的分配.

总结

以上是内存溢出为你收集整理的c# – 如何在.net核心中执行String.Copy?全部内容,希望文章能够帮你解决c# – 如何在.net核心中执行String.Copy?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1221080.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存