C#注意事项
来源:互联网 发布:java注册界面源代码 编辑:程序博客网 时间:2024/05/08 15:08
在我们平常编程中,时间久了有时候会形成一种习惯性的思维方式,形成固有的编程风格,但是有些地方是需要斟酌的,即使是一个很小的错误也可能会导致昂贵的代价,要学会善于总结,从错误中汲取教训,尽量不再犯同样错误,注重编程之美,代码的优雅,总结几个平常经常犯的错误。
在C#编程中,字符型类型是最容易处理出错的地方,代价是非常昂贵,在.Net Framwork中,字符串是一个相当特别的引用类型,string本省就是一个不可继承的密封类,但是它具有了值类型所应用的特点,但是它在CLR中内存还是保存于托管堆之上,也就是说,当我们每次定义一个字符串类型的时候,就在堆内存中开辟一端内存,而当我们字符串被修改之后,它会创建一个新的内存,注意这里的内存是不连续的,而是通过修改栈内地址引用而拼凑字符串,不会改变源字符串在内存中的地址,所以有些程序员总是喜欢使用这样的方法格式化字符串。
上述代码,使用了字符串拼凑的方法,因为使用了多重串联,因此会在内存中创建两个不必要的字符串垃圾副本。其实在C#中,已经为我们提供了StringBuilder和String.Fromat来解决此问题,虽然他们可以实现同样的功能,但是他们有质的变化,StringBuilder在内存中开辟的是一段连续内存,当增加新字符串时候,它会在栈中指向的同一个堆内存中连续存放字符,这就形成了性能的提升。
0 0
- C# 注意事项
- C#注意事项
- C#操作Cookie注意事项
- Mobile C#开发注意事项
- C# Access Update 注意事项
- C#程序中的注意事项
- C# Enum注意事项
- C# SharpPcap编程注意事项
- C# Webserivce配置注意事项
- C#取随机数注意事项
- c#数据采集注意事项
- C# DataView 一些注意事项
- C#编程的注意事项
- c#开发注意事项
- c# 窗体编程注意事项
- c#开发中注意事项
- C#编程的注意事项
- C#转 JAVA 注意事项
- android知识体系
- 小议垃圾回收算法
- android socket 网络数据传输
- hadoop启动的一些相关命令
- git实现实验室服务器和自己PC代码同步
- C#注意事项
- Qwt源码解读之样本类——QwtIntervalSample、QwtSetSample、QwtOHLCSample
- FreeModbus 移植于STM32 实现Modbus RTU通信
- 跳表
- 无废话MVC入门教程二[第一个小Demo]
- <base>标签在jsp页面的应用
- SCMFS:a filesystem for storage class memory
- mono for ios/xamarin.ios 绑定 百度地图 SDK demo
- crm制作报表添加导航