c# string 基于内存的使用策略
来源:互联网 发布:c语言代码基础 编辑:程序博客网 时间:2024/06/03 07:27
最近在写的一个程序中要求对与一个string变量不断地更新。
我们知道,在C#中一个字符串一旦被确定,就是不可改的
对于
string str = "a";
str = "b";
str最开始的那块内存并没有被修改,而是创建了新的内存“b”,然后str指向了新的内存。
所以,对于一个string变量来说,如果不断去更新它,那么就会在内存中产生大量的垃圾。
针对这一问题,我选择使用StringBuilder来代替string
具体代码如下:
class StrDemo { StirngBuilder str; public StrDemo () { str = new StringBuilder(); } public string Str { get { return str.ToString(); } set { str.Clear(); str.Append(value); } }}这样,对于外部调用者来说,依然认为使用的是string,但是内部基于内存使用进行了优化。
相关资料:
String memory
Using the StringBuilder Class in the .NET Framework
How to improve string concatenation performance in Visual C#
希望有所帮助~
0 0
- c# string 基于内存的使用策略
- String的内存分配策略
- stl string的内存增长策略
- 基于策略的一种高效内存池的实现
- 基于策略的一种高效内存池的实现
- C# String.Format 的使用
- C# 字符串string的使用
- C++ string 使用引起的内存泄露
- 使用String的intern方法节省内存
- 使用String的intern方法节省内存
- C/C++/C#是否支持基于string的switch-case??
- 使用基于策略的网络扩展Kubernetes Deployments
- 基于hprof的Android 内存使用分析
- 3.使用基于内存的用户存储
- C#中String.Format的使用
- C#中String.Format的使用
- C#中string format的使用
- C#中,字符串的声明,你使用String还是string?
- Unity3D之手游开发中特殊的文件夹
- js 输入限制
- 黑马程序员——Java学习笔记 继承、抽象类和接口
- Java String StringBuilder StringBuffer
- javascript 继承
- c# string 基于内存的使用策略
- C++ MFC中的afx_msg and on_command
- WIN7 64位系统安装JDK并配置环境变量
- 中央处理器-第十节多媒体CPU
- Appium源码分析(6)-responses模块
- ios8/xcode6的一些坑(网友总结)
- 在MFC下如何定义全局变量和全局函数VC++
- 线性回归
- 一个例子学会mysql存储过程