向高人请教,关于string的问题

问题描述

VB里面dimaasstringa="123"a&="456"和a="123"&_"456"一样吗?是不是其实他们都分配了两个string的空间?我觉得a="123"&_"456"只分配了一个空间,对吗?

解决方案

解决方案二:
都只分配了一个空间后面的只是赋值,当然,赋值的时候可能内部分配的空间大小会改变
解决方案三:
将字符串分配到String变量后,该字符串为“不可变”,这意味着您不能更改其长度或内容。以任何方式更改字符串时,VisualBasic将创建一个新字符串并放弃之前的字符串。然后String变量指向新字符串。------------------认真看这句...
解决方案四:
string不变性,第一种一定会分配两个空间,先给a赋值后,给a指定“123”的空间,再并时,指向“123456”的空间,但“123”的空间并没有销毁啊。我问的是第二种呢?
解决方案五:
用代码来说明问题吧第一种:DimaAsStringa="123"a&="456"

生成的IL代码如下:[code=MSIL]IL_0000:nopIL_0001:ldstr"123"IL_0006:stloc.0IL_0007:ldloc.0IL_0008:ldstr"456"IL_000d:callstring[mscorlib]System.String::Concat(string,string)[/code]第二种:DimbAsStringb="123"&_"456"

生成的IL如下:[code=MSIL]IL_0012:stloc.0IL_0013:ldstr"123456"IL_0018:stloc.1[/code]很明显,第二种情况下,"&_"仅仅作为VB的换行符而已,不会生成2个string,而第一种会产生2个string
解决方案六:
第二种是一样的,&运算符会分配两个临时空间...所以如果要对字符串执行大量操作(如串联、删除或替换),则通过System.Text命名空间中的StringBuilder类可能会提高性能...
解决方案七:
-_-!没有到考虑编译器优化的问题...
解决方案八:
vrhero人都是逼出来的...等级:发表于:2007-11-0216:56:456楼得分:0-_-!没有到考虑编译器优化的问题...??
解决方案九:
a="123"&_"456"----------因为没有第二个变量...编译器将如qzj所说“将"&_"仅仅作为VB的换行符而已”...把&运算符优化掉...
解决方案十:
學習。

时间: 2024-09-15 10:21:40

向高人请教,关于string的问题的相关文章

请教一个string.replaceall正则问题

问题描述 有个url比如:http://test.com/test.do?aaa=1&bbb=234&ccc=567我现在要用string.replaceall把"&bbb=234"替换成空,怎么写正则,bbb参数名是已知的,后面的参数值未知,也就是长度未知,怎么通过正则替换呢?最后替换后的结果是http://test.com/test.do?aaa=1&ccc=567 解决方案 解决方案二:haveatryStrings="http://te

学习过程反思

    本篇反思总结了一般的学习过程.掌握学习的方法,可以让你更高效地进行学习.这对于天天要学新技术的IT人员来说,是非常重要的.     本文反思了自己学习WPF过程中出现的一些问题,然后对以后学习的方法进行了重新设计.     本文的主要内容: 与学习相关的哲学思想原来的学习方案设计工具的反思没学好的原因新的方案   相关哲学理论     我之前的文章中,有一些最基本的哲学思想和最抽象的学习过程,见:<方法>.这些基本理论中,与学习过程直接相关的是:系统论:学习的过程中,切不可一叶障目,要

求一段正则表达式的代码

问题描述 对java的正则表达式对象不熟,特来请教.String s = "23131http://baidu.com131http://qq.com1231http://taobao.com31231"现在想把字符串中的网址提取出来组成一个字符串数组,求代码,谢谢 解决方案 因为你最后是要后去到的是网址 所以没有必要去用正则表达式 直接用字符串的截取查找就行 而且最后找到放到list里面去 下面写的一段看能不能满足你的要求package cn.com.wangxiuwei.test;

郁闷网站被黑,所有文字字段被加入&amp;amp;lt;/title&amp;amp;gt;&amp;amp;lt;/&amp;amp;lt;/title&amp;amp;gt;&amp;amp;lt;/pre&amp;amp;gt;&amp;amp;quot;&amp;amp;gt;&amp;amp;lt;script src=http://1.hao929.cn/ads.js&amp;amp;gt;&amp;amp;lt;/script&amp;amp;gt;&amp;amp;lt;!--

问题描述 郁闷网站被黑,所有文字字段被加入</title></</title></pre>"><scriptsrc=http://1.hao929.cn/ads.js></script><!--大家有没有人,遇到过,怎么解决,关键是堵住漏洞不知道他是怎么办到的,怕以后又被黑网上查了不少地方,中这个的还不少,不过都没说是怎么被黑的,怎么堵漏洞在此先谢过大家 解决方案 解决方案二:察看日志没有具体的环境不好帮你找解决方案三

算法-递归问题,学习请教?求高人指点?字数够了吧!!!

问题描述 递归问题,学习请教?求高人指点?字数够了吧!!! 今天研究了一些递归程序,简单点的递推过程还能想明白执行过程,复杂的就整不明白了,请问各位大神们需要认真的研究递归过程吗?是不是会用就行了啊?

java poi word-这个poi把String写入word文档后,打开文档就报“打开文件错误”,求高人解决下

问题描述 这个poi把String写入word文档后,打开文档就报"打开文件错误",求高人解决下 import java.io.ByteArrayInputStream;import java.io.FileOutputStream;import java.io.IOException; import org.apache.poi.poifs.filesystem.DirectoryEntry;import org.apache.poi.poifs.filesystem.Documen

asp-遇到一个问题解决不了,请教一下高人

问题描述 遇到一个问题解决不了,请教一下高人 第一帖,,本人初学菜鸟,遇到个头疼的问题请教一下,我在aspx页面放了个UpdatePanel,但是用不了table,加了table报错说应该放在runat属性的标签里,但是table加了这个属性还是报错,放在form里就没问题,可是这样的话就没法调整页面格式了啊. 解决方案 在< updatePanel>节点后面加上< ContentTemplate>,比如(去掉<后面的空格,加上是因为编辑器会处理错误) < asp:Up

c++的问题-急求!有木有C++的大神,有木有string的高人~求帮忙呢?~

问题描述 急求!有木有C++的大神,有木有string的高人~求帮忙呢?~ 小弟写了一个程序,遇到一个很大的问题请帮忙呢,定义了两个string类型的变量,然后用在程序中出现了这样的问题.第一个string A 定义为全局变量,在第一个函数里面,用于接收API收到的const char *类型的参数.然后,在第二个函数里面,再次定义一个string B,并让B = A:此时程序执行到此处时B的结果出现错误,其返回值的前四位是随机的数然后才是A的值.不仅在赋值上如此,所有的对string类型的赋值

请教各位高人,我电脑的IE打开后一直是“无法显示该网页”,是什么问题啊,该怎么处理下啊? 急啊

问题描述 请教各位高人,我电脑的IE打开后一直是"无法显示该网页",是什么问题啊,该怎么处理下啊?急啊 解决方案 解决方案二:无网络连接?不能上网?解决方案三:不是网络问题啊能上QQ和非信啊只要是不通过ie直接上的都能上解决方案四:检查ie网络连接设置是否正确解决方案五:csdn你是怎么上的?-_-!