好象没有听说FrameWork是用C#写的
倒是Delphi或VC可以用自身编写
就象Java的编译器不是用Java写的一样
当然Jbuilder这种开发环境可以用Java写
因为VC和Delphi都是可执行代码
自然可以
比如用Delphi5开发Delphi6
然后用Delphi5编译出来Delphi6
再用新的Delphi6编译原有的代码
可以说Delphi6是用Delphi5来开发的
而C#和java则是中间语言
需要一个解释器
而这个解释器不可以用自身编写
否则解释器也需要一个解释器
则不成为死循环

解决方案 »

  1.   

    但书上和网上都说.net FrameWork是用c#写的啊?
      

  2.   

    书上的意思是,绝大部分的.net framework函数使用c#写的。
    这并不矛盾。就像我如果说tc中的很多库使用tc自己写的一样。
    c#在别的语言帮他实现了基本功能后,就可以写出更复杂的功能,例如,
    .net framework懂了吗?
      

  3.   

    呵呵,其实是语言与工具的区别
    Object Pascal是一种语言,Delphi是开发工具
    C++是一种语言,VC++是开发工具c#是一种语言,并不是什么写的。应该说c#的实现是什么什么写的
      

  4.   

    你理解错了。
    .net framework不等价于C#以及MSIL编译器。
    至于编译器,我可以用低版本的编译器来编译用来制作高版本的编译器的程序编码,这是很正常的
    况且大家(包括你的书)说的意思是:.net framework SDK中的Corelib中的部分类库是用C#编码的
      

  5.   

    我并没有说.net framework是“C#以及MSIL编译器”你最多最多可以把我的意思理解为:C#是.net framework中一部分代码的编译器。
    而他生成的代码,也包括一些别的语言写的代码一并构成了.net
    framework.  .net framework.集成了这些代码,成为了一个强大的环境,可以反过来支持c#这个编译器,提供一些现成的功能。
      

  6.   

    C#编译器不是用C#写的,.NET的FCL(Framework Class Library)中的绝大部分是C#写的,而FCL不过是大量的类/函数而已(.NET CLR力所不能及的关键部分仍然要靠PInvoke和native code实现), 这就相当于C++的标准类库是用C++写的一样,没有什么惊奇之处。
      

  7.   

    http://www.go-mono.org 是.Net在Linux下的实现
    他的C#编译器就是用C#写的,很值得参考
      

  8.   

    .Net Framework 应该是vc7.0写的,而.Net FrameWork Class Library 是C#写的。当然,调用了大量的Win32 API.
      

  9.   

    .Net FrameWork Class Library 是C#写的。当然,调用了大量的Win32 API.LuxuRyClassLibrary也是C#写的。当然,也调用了大量的Win32 API.please check out :www.es21cn.com/liukan
      

  10.   

    c#是一种语言,它是需要用编译器来翻译的,而C#的编译器绝对是汇编语言编写的,而.net 的类库是用c#写的,核心类库可能是c,或c++写的,至于背后的操作机制则完全是机器语言。