就是讲c# 在内存中实现比如类型的转换 内部是怎么回事的??谁能给点分呀,实在可怜,交易也行呀

解决方案 »

  1.   

    我算读net 书多的去,没有一本的,如果要看架构到挺多的,net框架设计以及net框架设计 via c#,这都讲到box和unbox方面的内容,比较细致的环境语言细节都讲到了
      

  2.   

    没有这类书,因为更本没有必要,操作内存用c/c++,.net不需要管理这些东西。
    .net内部有unsafe code但是一般禁用的
      

  3.   

    Microsoft .NET IL汇编语言程序设计 讲了一点点,不过不多
      

  4.   

    类型转换?你需要了解C语言知识.不同的类型.比如int,float, 都是一块内存,关键是我们怎么来解释它.C语言的void* 可以指向任意类型. 
    如果你用int*, 就是把指向的那块内存当作int32来读取,
    如果你用float* ,就是把那块内存当作float来读取.所以,类型转换, 只是用不同的处理规则来进行处理内存而已.同一块内存,用不同的指针来读取,会有不同的结果.编码问题也是类似.
    比如假设内存中FF00FF00FF00
    如果是t_char*宽字符类型,能正常读取出来, 但如果你用char*,就读个ff,它就没有了. 因为C语言"字符串"规则是\0为结束符.
    虽然这里FF00是宽字符时的一个字母,但由于我们用了char*,规则不同,它出错.
      

  5.   

    这个我在另一个帖子里面回过你,google "虚函数表"