最新评论

prime23 2019-05-31 09:11
https://sharplab.io/#v2:EYLgHgbALANALiAlgGxgExAagD4AEBMAjALABQZAdgIYC2ApgM4AOVAxnQAQCSAMj3VQBOFMgG8yHSRwLTCAdglTxpKao6sA9hQZwOiCroDqAUS4BxABIAVDgF4OEAAwBuMorWyI0qBwCyVfQAKXEJHAG0AXQ4hAHMGAEp3NWUPDwA3IQ4ACzpEGKzde3kXNxVU1QAFOg0mZE4matrOewo6AHcOABE6NLpkGrpBQIAiYEENDQBrYfjXcjLyyQzBDjSNVio4RC07DgaauoA6Mzo4ADV1ze2KQNnSxall7IFkOCyAZThNgFcGXaqDnRDlwGBYXm8AJ6GXL5OCBHJ5AowDgmczWeIcAD8HGGOSoryyEOGHBAOIoGl0eIJRLmSXKIQAnIEACTDURrDZbLQAXz0f1EVLenx+DG5M1pC0WAGEtAwNEcAEoCNA8fR0W5zcrcpLa+aqKjAHSCNi6GQAppJFKpXAAZlkjg4ADlaJxRBwYqdnBwGJ6OLq6VJbdFDXBjaxTaEOCdzpcuTc7nrrXaQl5gBNkNxQeDCdDEXD9JSYUi9AYOG0i3BEpLVFaHk9BTmK7t4U2ALQcAAcjgxACoOI5DnJNQ9pHIy02ADz2BtQpt9wiHQgcABky/HeY4AD5p9nZxu+wOGV6APTHwDgFoAxxUAyvKAWcTAPRmHECgGq4wAbWa2u73JAO5IAYf8AXMqAC+pgAU6qEACkgChioAvwl3oAxtaABx6gDAwYAL2oBpIuqqP6koyN0vT9A0KykuadSWqh0h2jhfQDEMIQOtQ9BVuUtaLM69C7HRdDDh4mH0naGi9IIgiIGgnA0VGpwXJy1y3KRTH0mOwwUXhgzDJxajoVIurckAA==
CharyGao 2019-01-14 10:25
@ 风中寻觅
不是
风中寻觅 2018-12-25 16:17
楼主是白山人?
ShawLocke 2018-08-16 23:13
@ CharyGao
嗯嗯,你说得很对,也很详细,一起学习
CharyGao 2018-08-14 10:16
@ ShawLocke
我个人理解:ld……是压栈操作,
-------------
14 IL_0010: ldarg.1 //加载第1个参数 weight
15 IL_0011: conv.r8 //转换成double
16 IL_0012: ldloc.0 //加载索引为0的局部变量(healthyWeight)
17 IL_0013: ldc.r8 1.1000000000000001
--------------
中 14,16,17是ld……(压栈操作),所以 maxstack为3
CharyGao 2018-08-14 10:07
@ ShawLocke
thinks
ShawLocke 2018-08-12 16:29
文章写得很棒,是我学习MSIL的引导入门,感谢!
People的IsHealthyWeight这里有一个明显错误:17 IL_0013: ldc.r8 1.1000000000000001 //加载double数值 1.1, 看IL_0010到IL_0013,加载了3次,这个函数最多也是加载3次,所以maxstack为3

maxstack为3,并不是因为ldc.r8进行了3次。你如果修改C#源代码,将&&改为&,你会发现ldc.r8也是进行了3次,但maxstack为4。

原因是:
IL_0011: ldarg.1
IL_0012: conv.r8
IL_0013: ldloc.0
IL_0014: ldc.r8 1.1

前2条占据一个位置,第3条占据一个位置,第4条占据一个位置,所以maxstack为3。后续代码也没有再超过这种情况,所以最终maxstack是3
口袋弟 2018-04-03 23:38
博主开头举得例子第2点有误,我爱你三个字对应的52946、45230、50403并不是Unicode的十进制,应该是GB2312编码(博主在最后其实也写了)
CharyGao 2017-04-28 15:42
@yoghourty 没明白您的意思。7z 应该不支持多线程。
yoghourty 2017-04-17 11:18
@ CharyGao
您好!我通过修改源码 \CPP\7zip\UI\Client7z 工程里的代码可以实现把整个文件夹打包成 .7z 格式的压缩包,也可以解压和显示进度条。但那个工程里的代码好像不支持多线程,也就是如果我把我封装出来的类实例化放在多个线程里并行打包就会出问题。请问我可以在源码哪里得到帮助?其实我更想知道 \CPP\7zip\Bundles\Format7zF 工程生成的 .dll 接口使用的相关代码。(PS:按照您的方法可以成功生成 7z.dll,谢谢 :))
逆水寒龙 2017-03-29 11:26
社区版竟然没这功能。。。悲催啊
渔歌 2017-02-05 17:27
楼主真是闲得E-G-G疼吧
叶知 2017-02-04 20:34
按汇编代码生成的话,三元操作符要多一个操作:
i == 0 ? -1 : -2 会产生一个临时值,然后再赋值;
而if else则是直接赋值,不使用任何临时值。但是那个临时值一般会是寄存器,所以也不会有什么开销。
所以,在C++里并没有根本上的区别;当然,这是在不优化的前提下。开优化,根本无法测试....(因为测试代码不会生成循环)。
PS:C#的话,因为是字节码(应该是吧?),所以是虚拟机在真正执行,所以相对if else,三元操作符可能有优化。
Tokyo^hot 2017-02-04 18:23
精神可嘉
Victor_CS zhang 2017-02-04 17:43
我想说,你1亿次的差距连10毫秒都不到,没必要纠结用哪个,不过3元简洁还是很不错的
XiaoFaye 2016-11-03 15:38
我不仅编译了,还改了它的源代码,支持鼠标前进后退的快捷键。。。
CharyGao 2016-02-10 16:00
@ tdus
报错的内容写的很明确是 缺少了 matplotlib 的某个文件,重新安装一下matplotlib试试。请注意依赖关系。
tdus 2016-02-06 14:31
hi:第一个例子的第二段代码报这个:

FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\Administrator\\.matplotlib\\fontList.py3k.cache'

后面的所有例子都报这个,请指点,万分感谢!
CharyGao 2016-02-05 15:22
@ 阳光沙滩海岸线
你用的什么浏览器?
阳光沙滩海岸线 2016-01-29 22:22
为啥我打开的是可以直接复制的啊?
Deja 2016-01-03 22:47
不错!!
CharyGao 2016-01-03 13:03
@ 来如风
多谢提心,新人,请多多指教,刚试了一下,可以!
来如风 2016-01-03 12:10
startExplorer 在最新版的eclipse里已经有类似功能了,show-in >>> system explorer
CharyGao 2016-01-01 20:45
@ ahdung
你说的是一个文件,我说的是一坨文件。
CharyGao 2016-01-01 20:44
@ edielei
问题就是复制后还要删除路径才能得到文件名
ahdung 2015-12-30 23:50
真是有的蛋疼了,除了上面说的,还有选中图标后,单击文件名区域就能进入编辑状态,博主堂堂程序员,感觉对电脑基础操作居然还不如一般用户熟悉,奇怪。
edielei 2015-12-30 15:40
搞笑。。你全选文件,然后按着Shift键,然后按下鼠标右键。。复制为路径。。
Nature.j 2015-12-30 11:29
一般我用F2,写个小工具玩玩也不错。
vbfool 2015-11-12 15:46
在CSS里好像可以直接指定字体地址,让浏览器自动下载字体?
CharyGao 2015-11-12 11:03
@ wdwwtzy
其实我是想说,python3的编码风格很整齐.
wdwwtzy 2015-11-12 10:59
这跟ruby有什么关系吗。。。。。
诺贝尔 2015-10-19 14:25
以前微软出的那个live writer套餐好用。

返回顶部返回顶部