土曜日, 4月 09, 2011

C#の多次元配列

C#では、配列の宣言がJavaと異なります。

角カッコが、型のほうにつく。

(C#)
string[] nameList={"Ann","Chris","Freda","Darlene","Toni"};

こんな感じです。

これがJavaだと、変数名のほうにつきます。

(Java)
String list[]={"Brad","Alfie","Chris"};

こんなことでも、結構ストレスになるものです。

C#では、多次元配列がさらに特殊な形をとります。

(C#)
int[,] intList = { { 1, 2 }, { 3, 4 } };

あれ、というような意外感があるように思います。

さらに、Javaのように宣言する配列は、C#ではjagged配列という、また別なデータ構造を意味します。

これは、配列の配列という位置づけで、それぞれの配列の要素に、任意の配列を指定できます。

逆に言うと、それぞれの配列の要素に配列を指定しなければなりません。

(C#)
int[][] jaggedList =new int[2][];
jaggedList[0] = new int[2];
jaggedList[1] = new int[3];

注意が必要です。

Qt: 外部プログラムを起動する

  Qt/C++ のアプリは、外部へ直接アクセスできます。これはネットアプリでは不可能な Qt のメリットです。 外部プログラムを起動することもできます。QProcess::startDetached() を使うと独立したプロセスを立ち上げることができます。 この QProces...