(^ω^) JScript .NET スレッド Part2 at TECH
[2ch|▼Menu]
66:デフォルトの名無しさん
07/11/23 22:24:07
演算子のオーバーロードも貼っておくか(前スレ597より)
------
import System;
import System.Runtime.CompilerServices;
class Foo
{
    private var Value: int;
    public function Foo(val : int) {
        this.Value = val;
    }
    public static SpecialName function op_Addition(a: Foo, b: Foo): Foo {
        return new Foo(a.Value + b.Value);
    }
    public static SpecialName function op_Multiply(a: Foo, b: Foo) : Foo {
        return new Foo(a.Value * b.Value);
    }
    public static SpecialName function op_UnaryNegation(a: Foo): Foo {
        return new Foo(-a.Value);
    }
    public override function ToString() : String {
        // SpecialNameを外した時との挙動の差がわかりやすいようにわざと100倍している
        return (100 * this.Value).ToString();
    }
}

var a: Foo = new Foo(123);
var b: Foo = new Foo(45);
Console.WriteLine("{0}, {1}, {2}", -a, a + b, a * b);
------
参考URL:
演算子のオーバーロード
URLリンク(msdn2.microsoft.com)(vs.80).aspx


次ページ
続きを表示
1を表示
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5500日前に更新/62 KB
担当:undef