C++/Cli语言语法总结

来源:互联网 发布:js 删除表格一行数据 编辑:程序博客网 时间:2024/05/01 18:51

Cli语言的部分语法规则:

1、类的声明和引用

     引用某个类时,需引用该类所在的空间;

     若引用代码和类定义在同一个命名空间,但在不同的文件,则引用类声明的头文件;

2、类的方法

      类中方法的public/protect/private属性声明和C++中类似,均为关键字加冒号,即:

public:

    void  Function()

{

}

 

静态方法:     

public:

   static  void  Function()

{

}

 

3、类的方法调用:

 

静态方法:

    ClassA::StaticFun();

普通方法:

   Box^ newBox = gcnew Box(10, 15, 20);

   newBox->Volume());

 

C++/CLI和C#的等价构造(Construct)

C++/CLI                                    C#                                     描述
===========================================================
T::typeid                                    typeof(T)                           取得T的类型信息
pin_ptr<T>                                fixed                                  取得内存地址
!ClassName                              ~ClassName                      Finalizer(由GC调用)
~ClassName+delete                 IDisposable+using             Destructor(显式析构)
array<array<T^>^>^                  T[][]                                    锯齿数组
array<T^, 2>^                            T[,]                                      二维矩形数组
%                                               ref/out                                可跟踪引用
generic<typename T>
ref class Stack                           class Stack<T>                 generics

注意本地类的C++模板和.NET的generics是不同的。generics存在于程序集中,其实例【即特定类】在运行时实例化,而template只存在于源代码中【不存在于程序集中】,其实例【即特定类】在编译时实例化。

托管类的C++模板和本地类的C++模板,其语法是一样的,许多特性也一样的,也在编译时解析。依我的观点,两者是完全一样的。

 

0 0
原创粉丝点击