2010-11-17 51 views
2

在我收到有关我是多么愚蠢的问题之前,我希望它非常清楚,我明白这两种语言是完全不同的。但是,写这些语言的方式恰恰相似。C#4与ActionScript 3:语法差异

我是一个沉重的ActionScripter谁已经进入一个.NET环境。两者之间的书面语法差异是什么?我希望对我的插件岛以外的.NET团队有用。

例如:

// AS 
private function SendMail():void { 
    //do something 
} 

//C# 
static void SendMail() { 
    //do something 
} 
+2

听起来像是一个非常庞大的问题......那岂不是更容易要求对C#一本好的参考书? – PatrickS 2010-11-17 03:03:07

+0

也许...但除非有“C#AS3:参考指南”,它并没有真正帮助我。我可能只是读了一本C#书。 – dcolumbus 2010-11-17 03:25:05

+1

这是我的观点!既然你已经知道AS3,你应该可以通过阅读关于C#的知识来突出自己的差异。我怀疑这里有几个答案可以涵盖这个主题... – PatrickS 2010-11-17 03:38:24

回答

1

你已经见过的最大的区别自己:在ActionScript中声明是

[protection specifier] (function | var) name : type; 

,并在C#是

[protection specifier] type name; 

“静” 是近Actionscript和C#之间相同;相当于您的AS功能标头将是

private void SendMail() {} 

在C#中。对于我来说,其他最显而易见的区别是Object()和Array(),它们是C#中实际的TYPES类型,但是更像是一种轻松的扔入式的东西,在AS中想要的东西。或者我觉得 - 我刚刚在过去的几周里做了与你正在谈论的完全相反的事情,从C#到Actionscript :)。

+0

有趣。还有什么我需要注意的?你到目前为止如何喜欢AS3? – dcolumbus 2010-11-17 03:26:33

+0

我认为最好称之为'修饰符' – abatishchev 2010-11-17 10:34:10

3

这也是一个区别:在Actionscript 3中,getters/setters是函数,在C#中你可以在变量中定义它们。

C#

private string _Description; 

    public string Description 
    { 
     get { return _Description; } 
     set { _Description = value; } 
    } 

AS3

private var _description:String; 

public function get description():String 
{ 
    return _description; 
} 

public function set description(value:String):void 
{ 
    _description = value; 
} 
+0

这对于AS3来说真的很不错,使得分解变得轻而易举。 – 2010-11-18 01:10:04