1.基本数据类型
C++ VB.net C# Java
--------------------------------------------------------------------------------
布尔型 bool Boolean Boolean boolean
字符型 char Char Char char
短型 short Short Short short
整型 int Integer Integer int
长型 long Long Long long
单精型 float Single Single float
双精型 double Double Double double
指针 void* N/A N/A N/A
字符串型 string String String String
2.声明
1)变量的声明
C++ : 类型名 变量名 [= 初值] [, 变量名 [= 初值] [, 变量名 [= 初值] [, …]]];
C# : 类型名 变量名 [= 初值] [, 变量名 [= 初值] [, 变量名 [= 初值] [, …]]];
Java : 类型名 变量名 [= 初值] [, 变量名 [= 初值] [, 变量名 [= 初值] [, …]]];
VB.net : Dim 变量名 as 类型名 [= 初值] [, 变量名 as 类型名 [= 初值] [, …]]
示例:
C++ : int nValue;
C# : Integer nValue;
Java : int nValue;
VB.net : Dim nValue1,nValue2 as Integer
2)常量的声明
C++ : const 类型名 常量名 = 值 [, 常量名 = 值 [, 常量名 = 值 [, …]]];
VB.net : Const 常量名 as 类型名 = 值 [, 常量名 as 类型名 = 值 [, …]]
C# : const 类型名 常量名 = 值 [, 常量名 = 值 [, 常量名 = 值 [, …]]];
Java : final 类型名 常量名 = 值 [, 常量名 = 值 [, 常量名 = 值 [, …]]];
示例:
C++ : const float PI = 3.1415926;
C# : const Single PI = 3.1415926;
Java : final float PI = 3.1415926;
VB.net : Const PI as Single = 3.1415926
3)数组的声明
C++ : 类型名 数组名[维数];
C# : 类型名 数组名[维数];
Java : 类型名 数组名[维数];
VB.net : dim 数组名(维数) as 类型名 or dim 数组名() as 类型名={0,1,2}
示例:
C++ : int nArray[255];
C# : Integer nArray[255];
Java : int nArray[255];
VB.net : dim nArray(255) as Integer
4)全局函数的声明
C++ : 返回值类型 函数名(参数列表)
{
……
return 返回值;
……
}
VB.net: 分为过程和函数两种,过程没有返回值
过程: Sub 过程名(参数列表)
……
Exit Sub
……
End Sub
函数: Function 函数名(参数列表) As 返回类型
……
Return 返回值
……
End Function
C# : 无全局函数声明
Java : 无全局函数声明
示例:
C++ :
int AddPar(int nPar1, int nPar2)
{
return nPar1 + nPar2;
}
VB.net:
Function AddPar(ByVal nPar1 As Integer, ByVal nPar2 AsInteger) As Integer
Return nPar1 + nPar2
EndFunction
5)面向对象的声明(即类声明)
1.面向对象的关键字的比较
关键字 C++ VB.net C# Java
-----------------------------------------------------------------------
命名空间 namespace NameSpace namespace package(Java中的package等效)
类声明符 class Class class class
接口声明符 class Interface interface interface
公共访问符 public Public public public
私有访问符 private Private private private
保护访问符 protected Protected protected protected
构造函数 类名 New 类名 类名
析构函数 ~类名 Finalize finalize finalize (VB.net、C#.net和Java系伪析构函数)
类继承符 : (冒号) Inherits : (冒号) extends
接口实现 : (冒号) Implements : (冒号) Implements
运算符重载 operator N/A operator N/A (C#只有有限的运算符重载)
覆写~函数 virtual Overrides override abstract (指覆写父类函数或实现接口函数)
示例:
①C++:
namespace EVACN //命名空间(名域)
{
//接口IWorker
class IWorker
{
virtual void Work() = 0;
};
//类Factory
class Factory : public Building,// 父类
publlc IWorker// 所要实现的接口
{
public:
Factory() //构造函数
{
//……
}
~Factory()//析构函数
{
//……
}
void Work()//所实现的接口方法
{
//……
}
string GetName()//成员函数
{
return string(“Evacn Studio.”);
}
bool operator+ (IWoker *p) //重载运算符+
{
return true;
}
protected:
int m_nSize;//成员变量
};
}
②VB.net:
Namespace EVACN ‘名域
//接口IWorker
Public Interface IWorker
Sub Work()
End Interface
‘类 Factory
Public Class Factory
Inherits Building ‘父类
Implements IWoker ‘所要实现接口
Public Sub New() ‘构造函数
‘……
End Sub
Public Sub Finalize() ‘析构函数
‘……
End Sub
Public Overrides Sub Work Implements IWorker.Work ‘所实现的接口函数
‘……
End Sub
Public Function GetName As String ‘成员函数
Return “Evacn Studio.”
End Function
‘operator + 重载运算符不可能
Protected m_nSize As Integer ‘成员变量
End Class
End Namspace ’EVACN
③C#:
namespace EVACN //名域
{
Interface IWoker
{
void Work();
}
Class Factory : Building //父类
IWoker
{
public Factory() //构造函数
{
//……
}
public finalize() //析构函数
{
//……
}
public override void Work() //所实现的接口函数
{
//……
}
public String GetName() //成员函数
{
return “Evacn Studio.”;
}
public Boolean operator+ (IWorker p) //重载运算符+
{
return true;
}
protected Integer m_nSize; //成员变量
}
}
④Java:
package EVACN; //包
Interface IWorker
{
void Work();
}
class Factory extends Building // 父类
Implements IWork // 所要实现的接口
{
public Factory() //构造函数
{
//……
}
public finalize() //析构函数
{
//……
}
public void Work() //所实现接口函数
{
//……
}
public String GetName() //成员函数
{
return “Evacn Studio.”;
}
protected int m_nSize; //成员变量
}
3.语句
C类(其中包括C++,C#,Java)中的语句是完全通用的。
关键字 C类(其中包括C++,C#,Java) VB.net
______________________________________________________
等于判断语句 == =
判断语句 if、else IF、THEN、ELSE、END IF
分支语句 switch、case SELECT、CASE、END SELECT
异常处理语句 try,catch,finally,throw TRY、CATCH、FINALLY、END TRY、Throw
循环语句 for, while, do FOR、TO、STEP、NEXT、WHILE、LOOP、END WHILE
continue,break EXIT DO、EXIT WHILE、EIXT FOR
示例:
⑴判断语句
①C类:
if (a == b )
{
a = 12;
b = 13;
}
else
{
a = b;
b = 13;
}
②VB.net:
IF a = b THEN
a = 12 : b =13
ELSE
a = b : b = 13
END IF
⑵分支语句
①C类:
switch (a)
{
case 1:
b = 12;
break;
case 2:
b = 13;
break;
case 3:
b = 14;
break;
default:
b = 0;
}
②VB.net:
Select a
Case 1
b = 12
Case 2
b = 13
Case 3
b = 14
Case Else
b = 0
End Select
⑶循环语句:
㈠for
①C类:
for (i = 0; i < 10; i++)
{
//……
}
②VB.net:
FOR i = 0 to 10 Step 1
‘……
NEXT
㈡while
①C类:
while(true)
{
//……
}
②VB.net:
While true
‘……
END While
㈢do while
①C类:
do
{
//……
}
while(true)
②VB.net:
Do
‘……
Loop While True
㈣异常处理语句
①C类:
try
{
//……
throw int(0);
}
catch(int e)
{
//……
}
finally
{
//……
}
②VB.net:
TRY
‘……
THROW New Exception
CATCH e As Exception
‘……
FINALLY
‘……
END TRY
4.程序结构:
C++ VB.net C# Java
______________________________________________________
包含 #include import #import import
#import
由于C#,Java,VB.net是纯面向对象语言。所以主函数都在主类中。而C++则是将主函数作为全局函数声明出来。