[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends:00059] Re: Microsoft C#



.:・‥…:ブライダルネット:・‥…‥:.....:・‥…‥:.....
>   『 直感から交際成立までノンストップ!』
    『 男性/月額1500円〜、女性/無料の結婚情報サービス!』
       出会いを急ぐなら今すぐ
..:・‥…‥ http://www.easyml.com/668.php3 .........................  
------------------------------------------------------------------------


> Microsoft の新言語 C# について..
> 
> http://cnet.sphere.ne.jp/News/2000/Item/000623-2.html
> 
> 「OSからも言語からも独立している」と書いてありますが、
> どういう意味なんでしょう。

続報が出ました。ECMAに提出したというあたりが、ヤッテくれます。
# ISOではなくECMAというところが嫌みですなぁ。
http://japan.cnet.com/News/2000/Item/000627-2.html


言語仕様も公開になりました。
http://msdn.microsoft.com/vstudio/nextgen/technology/csharpintro.asp

伝統の Hello world はこんな感じ

// hello.cs
using System;
class Hello
{
  static void Main() {
    Console.WriteLine("Hello, world");
  }
}

C#のソースは一見 Javaソックリですが、よく見るとギミックが沢山あります。
所詮はMicrosoftの言語、大したことはなかろうと思っていましたが、
言語仕様を見る限り、かなりイケテル感じです。

・無符号整数型: ushort, uint, ulong

・28桁の正確な10進数型(BCD?): decimal

・本物(?)のポインタがある(うむむむ)

・デストラクタがある(うむむむ)

・enum,struct により基本型(非オブジェクト)を追加できる

・C++の参照型引数に相当する ref 構文、out構文:
  例:void swap(ref int a, ref int b) { int t = a; a = b; b = a; }
      void div(int a, int b, out int q, out int r) { q = a / b; r = a % b; } 

・C++のoperatorオーバーロード

・制御文 foreach: foreach (int i in array) ...

・プロパティ構文: string caption { get { return s; } set {  s = value; }}

・派生クラスでメソッドを上書きする場合には override 宣言が必須

ナドナド。。。

-- 
/** 久野 浩 - Hiroshi Kuno
 * @email       mailto:hkuno@xxxxxxxxxxxxxxxx
 * @interesting ISO C99(9899:1999), ISO C++(14882:1998), Java and astronomy
 */