c++语言的类库有c语言和c++语言实现的,也应该有汇编语言实现的类库.
 c#语言的类库以我现在的认知水准,是用c#实现的。
 js的类库是大多是用js实现的? 请大家谈谈自己关于类库和语言的认识吧。谢谢!

解决方案 »

  1.   

     c#语言的类库以我现在的认知水准,是用c#实现的。这句话是错误的。c#的类库包装了很多非托管代码(即用C++或C写的代码),基本上,你在C#类库的方法原型中发现带extern的都是非托管代码
      

  2.   

    C#的前身就是C不然也不会叫C#了
      

  3.   

      我是这样理解的。经过c#类库包装的都是托管代码,而经pinvoke调用的系统api则为非托管代码。因此你说的包装了很多非托管代码这种说法是不正确的。而c#的类库中有关键字 extern 声明的只能说在C#调用了系统的api,因此还是C#来实现的。就像在vb,和delphi中调用系统api一样,api只是为了完成特定的功能,整体上还是属于这个语言来实现的。
      

  4.   

    c# 调用  API   请问API是用什么写的  ????
    其实程序都是一个样,语言却是有多种的特点的,有的做底层很爽,有的做高级都爽的,有的写着简单,有的运行很快,我们只有熟悉这些特点,才能在使用的过程中,顺心顺手。
    对于引用别的语言 我感觉所有语言都应该这样,扩展性好 才能更强。这个问题也曾经困扰我很久,总是想知道WINDOWS是用什么写的  LINUX是用什么写的  SQL是用什么写的 BIOS是用什么写的,总是感觉 如果WINDOWS是什么写的 我就学什么语言,因为这种语言写WINDOWS最好,其这是大错特错了,真正的好项目, 其实就是 成本和质量的一个平衡点。成本高了不好,质量低了也不好。
      

  5.   


    你的认知要提高.任何支持编译成中间语言(IL)的语言都可以给C#开发类库,但其实这么说本身就很别扭C#编的的类库可提供给VB.Net使用,C++/CLI编写的类库也可以提供给C#使用,
    如果你有能力,直接用IL写也未尝不可.各种托管语言之间的类库使用可以说是互通的.
      

  6.   


    平台封送(PInvoke)跟类库又是两码事,建议先弄清楚概念再说.
      

  7.   


    恩,我是这个理解的:平台调用服务 (PInvoke) 允许托管代码调用在 DLL 中实现的非托管函数。因此“经过c#类库包装的都是托管代码,而经pinvoke调用的系统api则为非托管代码。因此你说的包装了很多非托管代码这种说法是不……”
      我没觉得不妥,没有争论的意思,只是探讨。
      

  8.   

    认知很有问题....NET是IL语言,其实跟C#、VB没有太大关系...只要你愿意并有能力,你完全可以开发一种新语言去实现所谓C#的类库,当然你也可以用C++或别的什么语言去实现所谓C#的类库...只要能够符合.NET CLR的标准即可...
      

  9.   

    我也说两句:
    比如C++的类库,我们可以自己模仿类库的写法,写出自己的string,vector==,用的还是纯C++语言
    比如用C#,谁模仿写个Form,或者Timer看看?用纯C#?
    往里深究下去,感觉C#很渺小,.Net很杂烩,Java在这一点上比.Net/C#要强