(^ω^) JScript .NET スレッド Part2
at TECH
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