c#一元操作符過載
//實現
class Player
{
//測試操作符過載 在此為遊戲角色升級
public int tili;
public int neili;
public Player()
{
tili = 5;
neili =25;
}
//如下操作符過載為,角色一升級就把內力和體力加對應的值,然後返回類物件
//是一元操作符,只能作用於一個物件,即player類的一個物件
//操作符過載語法格式:public static 型別 operator ++(型別 變數)
//在C#中,下列操作符可以過載
// + - . ! ~ -- ++ true false . / % ^ << >> != == < > <= >=
//升級時 操作符 ++ 過載
public static Player operator ++(Player p)
{
//方法引數是類物件,對類物件進行相關操作後,然後返回類物件
p.tili = p.tili + 10;
p.neili = p.neili + 30;
return p;
}
//降級時 操作符 -- 過載
//其實操作符過載定義就是多了一個operator 操作符 2部分
public static Player operator --(Player p)
{
//方法引數是類物件,對類物件進行相關操作後,然後返回類物件
p.tili = p.tili - 10;
p.neili = p.neili - 30;
return p;
}
//顯示升級前後體力及內力值
public void Show()
{
Console.WriteLine("體力目前是:{0}",tili);
Console.WriteLine("內力目前是:{0}", neili);
}
}
呼叫
class Program
{
//演示操作符過載,角色升級
static void Main(string[] args)
{
Player p = new Player();
p.Show();
//升級
p++;//操作符過載
p.Show();
//降級
p--;
p.Show();
Console.ReadKey(); ;
}
class Player
{
//測試操作符過載 在此為遊戲角色升級
public int tili;
public int neili;
public Player()
{
tili = 5;
neili =25;
}
//如下操作符過載為,角色一升級就把內力和體力加對應的值,然後返回類物件
//是一元操作符,只能作用於一個物件,即player類的一個物件
//操作符過載語法格式:public static 型別 operator ++(型別 變數)
//在C#中,下列操作符可以過載
// + - . ! ~ -- ++ true false . / % ^ << >> != == < > <= >=
//升級時 操作符 ++ 過載
public static Player operator ++(Player p)
{
//方法引數是類物件,對類物件進行相關操作後,然後返回類物件
p.tili = p.tili + 10;
p.neili = p.neili + 30;
return p;
}
//降級時 操作符 -- 過載
//其實操作符過載定義就是多了一個operator 操作符 2部分
public static Player operator --(Player p)
{
//方法引數是類物件,對類物件進行相關操作後,然後返回類物件
p.tili = p.tili - 10;
p.neili = p.neili - 30;
return p;
}
//顯示升級前後體力及內力值
public void Show()
{
Console.WriteLine("體力目前是:{0}",tili);
Console.WriteLine("內力目前是:{0}", neili);
}
}
呼叫
class Program
{
//演示操作符過載,角色升級
static void Main(string[] args)
{
Player p = new Player();
p.Show();
//升級
p++;//操作符過載
p.Show();
//降級
p--;
p.Show();
Console.ReadKey(); ;
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-718198/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- C++操作符過載C++
- C++ 操作符過載C++
- 操作符過載集錦
- PHP 中的操作符過載PHP
- Kotlin——初級篇(五):操作符與操作符過載一Kotlin
- 一元操作符“++”,“- ” 之強制轉換數值
- C++ operator關鍵字(過載操作符)C++
- C# 運算子過載C#
- C#方法過載概念C#
- dart基礎之類介面操作符過載相關Dart
- 【c#】重寫和過載C#
- C#操作符??,?,?:功能解析C#
- c#二元操作符C#
- RxJava操作符之過濾操作符(五)RxJava
- JsonPath 驗證類既 Groovy 過載操作符實踐JSON
- 瞭解下C# 運算子過載C#
- c#按位操作符&^|與邏輯條件操作符運算子&&_||_?:C#
- 【C#學習筆記】函式過載C#筆記函式
- C#中幾個不常用的操作符C#
- 解剖 RxJava 之過濾操作符RxJava
- C++之【操作符】彙總 &【不能被過載的運算子】小記C++
- C#運算子過載---逐步地分析與理解C#
- RxJava 學習筆記 -- 過濾操作符RxJava筆記
- 第二十篇:類操作符過載的相關規定與具體實現示例
- 關於cin能識別輸入的資料型別(過載操作符&型別轉換)資料型別
- 一元購風波:你確定你玩得過平臺方嗎?
- RxJava2.0 操作符(3)—— Filter 過濾轉換符RxJavaFilter
- RxJava操作符之建立操作符(三)RxJava
- RxJava操作符之組合操作符(六)RxJava
- RxJava操作符之轉換操作符(四)RxJava
- SQL UNION 操作符 和 UNION ALL 操作符SQL
- matlab之向量中後一元素減前一元素Matlab
- C#檔案下載C#
- 一元多項式操作
- 一元5次方程式與一元6次方程式
- 過載的奧義之函式過載函式
- JavaScript in 操作符JavaScript
- Java操作符Java