[問題]請問如何做到 一個函數多樣功能

看板C_Sharp作者 (飄落的櫻花)時間17年前 (2007/08/24 23:51), 編輯推噓4(407)
留言11則, 2人參與, 最新討論串1/2 (看更多)
小弟寫了一個類別A 然後裡面有一個函數B 這個類別還蠻龐大的 但除了函數B 其他大部分都是固定的 但是我希望函數B可以替類別A提供多種功能 可能有幾十種也不一定 但是只為了這個函數B就去產生其他類別繼承類別A感覺不是很好的做法 小弟對這部分沒什麼概念 請問一般而言是用什麼方法達到一個類別的某幾個函數有多種不同的功能 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.224.134.139

08/24 23:53, , 1F
看不太懂的也…拋個磚,用函數重載吧……
08/24 23:53, 1F

08/24 23:57, , 2F
ㄜ..我這個函數B是要讓另一個程式呼叫用的
08/24 23:57, 2F

08/24 23:58, , 3F
固定就是B()的形式 但是我希望 B()可以提供不同功能
08/24 23:58, 3F

08/25 00:01, , 4F
就如果有兩個A類別執行B() 兩個B()各有不同的處理
08/25 00:01, 4F

08/25 00:02, , 5F
如果要override的話又要產生好多類別
08/25 00:02, 5F

08/25 00:02, , 6F
這樣感覺很不明智...
08/25 00:02, 6F

08/25 00:22, , 7F
override是重寫,不是重載…重載是overloade,不會產生新
08/25 00:22, 7F

08/25 00:23, , 8F
類別的……
08/25 00:23, 8F

08/25 00:29, , 9F
overload就是要改變函數參數 但是我函數必須固定為B()
08/25 00:29, 9F

08/25 00:30, , 10F
所以我不能用overload....
08/25 00:30, 10F

08/25 00:39, , 11F
那我只能想到If else了-_-||…
08/25 00:39, 11F
文章代碼(AID): #16plvmsL (C_Sharp)
文章代碼(AID): #16plvmsL (C_Sharp)