zoukankan      html  css  js  c++  java
  • [原]c++ vs c++cli (part0)

    items :
    CLR : commond language runtime 
    CIL : comman intermediat langauge
    MSIL: microsoft intermediat langauge
    JIT : just in time 
    VES :Virtual Execution System
     before we go on with c++ & c++\cli we just  take  simple breath here with native code,virtual machine and managed code 

    Managed code

    Native code

     the code that executes under the management of a virtual machine

     

     the code xecuted directly by the computer's CPU

     include programmer convenience and enhanced security guarantees

     Some complex with low level security guarantees

     

     


    The Virtual Machine
    C++/CLI applications execute in the context of the CLR. The CLR implements a virtual machine,
    which is a software implementation of an idealized, abstract execution environment. Programs
    that run on the CLR virtual machine use a language known as the Common Intermediate
    Language (CIL). Microsoft’s implementation of CIL is often referred to as MSIL, or just plain IL.
    The CLR relies on a JIT (just-in-time) compiler to translate the CIL code on demand into machine
    code in order to execute the program.
    The CLR virtual machine is Microsoft’s implementation of the Virtual Execution System
    (VES), which is part of the ECMA standard. As processors change, you need only change the
    way in which the executable code is generated from the processor-independent layer, and
    you’ll still be able to run the old programs written for the earlier processor. Pure IL generated
    by compilers targeting the CLR does not contain x86 instructions or any other object code that
    is configured to run on a particular processor. Compilers output MSIL code that can run on the
    virtual machine.

    Native

    Managed

    Pointer / Handle

    *

    ^

    Reference

    &

    %

    Allocate

    new

    gcnew

    Free

    Delete

    Delete(Optional)

    it will done auto by Garbage collector 

    Use Native Heap

    ü

    ü( Value types only)

    Use Managed Heap

    û

    ü

    Use Stack

    ü

    ü

    Verifiability

    * and & never

    ^ and % always


    c++ is native code , C++CLI is managed code 
    that what i want to tell You!!
  • 相关阅读:
    最小二乘法拟合(python numpy) Littlefish
    我的话
    亿万富豪们给2013年毕业生的忠告
    网站色彩搭配<转载>
    灾难专用使你的网站变黑为雅安默哀
    <转载>协议森林13 9527 (DNS协议)
    不常见的HTML标签<转载>
    tomcat支持shml配置详解
    <转载>struts2 拦截器 interceptor
    乱码解决
  • 原文地址:https://www.cnblogs.com/ammar/p/1528454.html
Copyright © 2011-2022 走看看