String s ="S1"分配了几次内存,String s="S1"+"s2"分配了几次? 分配了几次,为什么?多谢。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 String s ="S1" 一次 String s="S1"+"s2" 内存指向地址不同 String s="S1"+"s2" 内存指向地址不同什么意思? .entrypoint // 代码大小 8 (0x8) .maxstack 1 .locals init ([0] string s) IL_0000: nop IL_0001: ldstr "S1s2" IL_0006: stloc.0 IL_0007: ret都是一次il你看懂了么? string s = "S1" + "s2";这个是代码 我假设你知道il跟c#的关系,如果这个不知道请搜索去。.locals init ([0] string s) 声明局部变量sIL_0001: ldstr "S1s2"Ldstr的名称是文本 "load a string on the stack"的缩写版本。栈是一块内存区域,它用来传递参数到函数中。 所有的函数从栈上接收它们的参数。也就是说 string s="S1" + "s2"; 被改成了 s="S1s2"; 而只有一次内存分配。你看懂了没?? 我觉得这个问题,可以用做菜来解释。String s ="S1" 一次 储存S的内盘比喻为盘子, S1为炒青菜。 一个装载S这个盘子里,厨师分配一次盘子(内存)String s="S1"+"s2" 改青菜炒豆腐了,同样厨师也是存放在一个盘子S里 分配一次内存。 其实S=S1 和 S=S1+S2 只是值不同而已。 ASP.NET验证控件怎么能验证用户控件呢? ===求一个sql循环语句==== 最强的代码优化 能否动态调用类 javascript与自定义控件的问题,高手帮帮我 很的问题菜 asp.net页面如何自动刷新? 太气人了,刚和用户草了一架 在asp.net上如何实现像asp中把连接文件用include包含中文件中? 倾家荡产的提问!如何把图片放进dropdownlist里? 关于母版页 gridview 选择多选框,并通过js获得值,并通过form。action传递值
String s="S1"+"s2" 内存指向地址不同
什么意思?
// 代码大小 8 (0x8)
.maxstack 1
.locals init ([0] string s)
IL_0000: nop
IL_0001: ldstr "S1s2"
IL_0006: stloc.0
IL_0007: ret都是一次il你看懂了么?
我假设你知道il跟c#的关系,如果这个不知道请搜索去。.locals init ([0] string s) 声明局部变量sIL_0001: ldstr "S1s2"Ldstr的名称是文本 "load a string on the stack"的缩写版本。栈是一块内存区域,它用来传递参数到函数中。 所有的函数从栈上接收它们的参数。也就是说 string s="S1" + "s2"; 被改成了 s="S1s2"; 而只有一次内存分配。你看懂了没??
储存S的内盘比喻为盘子, S1为炒青菜。 一个装载S这个盘子里,厨师分配一次盘子(内存)String s="S1"+"s2"
改青菜炒豆腐了,同样厨师也是存放在一个盘子S里 分配一次内存。 其实S=S1 和 S=S1+S2 只是值不同而已。