C++与C#语法

来源:互联网 发布:用户昵称 数据库下载 编辑:程序博客网 时间:2024/05/17 06:34

A代表C++,B代表C#

一、变量

1.A:char   unsigned char B:sbyte byte

    A:unigned short/int/long         B:ushort uint ulong

  B:中的char变为unicode编码长度(int16)

  A: char[ ]   B:string

2.B浮点数多了一种decimal的类型

3.定义枚举类型时

A:enum _myenum{e1,e2}

B:  enum _myenum : int/byte{e1,e2}  _myenum后多了个枚举值的存储类型

使用时 A:_myenum em=e1;

              B: _myenum em=_myenum.e1;

4.定义结构体

结构体

A: struct _mystruct{type A;type B}

B:struct _mystruct{public typeA;public type B}每个成员前面多了个访问方式

5.数组

A: int a[ ]={1,2,3}; int *a=new int [3];

B: int[ ] a={1,2,3}; int a=new int[3] {1,2,3}

实际上B中的数组有类似于容器的特性,例如想知道它的

大小可以这样 int size=a.Length();

多维数组

A:int a[ ][ 2][ 3];

B int [,,] a; int[,] a=new int[1,2];

B还引入了锯齿数组的概念(jagged array),每行可以有不同的元素。

声明数组的数组

int [ ][ ]  jaggedIntArray={

                                            new int[ ]{1,2 },

                                             new int[ ]{3,4},

                                              new int[ ]{5}

                                                };

 

6.字符串

B:str.ToCharArray()可以将字符串转成字符

 C++与C#中的字符串,个人以为更类似于类的概念。

 

 

2.B:foreach()

用法:for(int myint in a){ }

二、函数调用

1.B:引入参数数组,调用含有参数数组的函数时,只需要类型相同,个数不受限制。

 

2.引用参数

   A:使用符号'&',放在参数类型后

   B:使用关键字 ref ,放在参数类型前

 

3. B:可以输出参数,使用关键字out

4.B中引入结构函数定义,即在结构体中定义函数

   eg : struct  customerName

           {

              public string firstName,lastName;

              public Name()

              {

                 return firstName + '  '+lastName;

               }

            }

5.B中有关于按引用重载

   可以在实际调用函数时直接在引用的参数前ref

   但是C++中,两个函数一个是参数按引用的情况,一个是直接值传递的形式,使用时,将无法区分。

 

 

 

 

 

 

 

原创粉丝点击