トップ «前の日記(2006-01-10) 最新 次の日記(2006-01-12)» 編集

日々の破片

Subscribe with livedoor Reader
著作一覧

2006-01-11

_ systemの引数

パス名を与える場合は、""で囲う。

system("diff -u \"#{org-path-name}\" \"#{new-path-name}\"")

じゃないと、

diff -u c:/documents and settings/foo/my documents/bar....

とかなっちゃうよ。

で、当然、c:/documents とand を比較するか、さもなきゃ引数が多過ぎるエラーとなる。

_ C#ジェネリック

なんなんだ?
using System;
public class G {
    static int Foo(T a, T b) where T : IComparable {
        return a.CompareTo(b);
    }
    static int Foo2(IComparable a, IComparable b) {
        return a.CompareTo(b);
    }
    public static void Main() {
        Console.WriteLine(Foo(1, 3));
        Console.WriteLine(Foo2(1, 3));
    }
}

上のように書くメリットがわからないのだが。

追記:みずしまさんからのご指摘(両方のパラメータを同一の型に強制できる)に納得しました。確かにそれはメリットです。気づけませんでした。どうもありがとうございます。

#というところからIComparator(これにかかるのは匿名メソッド)やIComparable(これにかかるのはジェネリック)と、Javaと.NET Fx 2.0とかについていろいろ考察。


2003|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|

ジェズイットを見習え