Re: [閒聊] 程式大師請進

看板Marginalman作者 (謹言慎行 拼relocate)時間4年前 (2021/11/11 19:14), 編輯推噓3(3011)
留言14則, 7人參與, 4年前最新討論串14/38 (看更多)
※ 引述《ZooseWu (動物園)》之銘言: : 我有兩個class A 與 B : 他們有80%的功能與函示名稱相似 : 然後我只有runtime的時候才知道物件身上有哪一個class : 我有一個好方法可以簡單的呼叫 (A|B).function嗎 : 對了class不是我寫的 : 所以我沒辦法透過寫interface然後讓AB繼承這種方法 如果是rust的話至少有幾種方法 1. 用宏 2. 宣告自己的 trait 然後實作在別人的物件上 沒錯 rust 允許你在別人的物件上實作介面 超爽的啦 3. 寫一個 delegate class 包裝起來 然後實作 Deref<Target=T> 用自動轉型讓它看起來好像是多出來的方法一樣 不過這招好像被很多rust仔視為物件導向遺毒 建議是不要這樣 如果不是寫rust 那就隨便啦== ----- Sent from JPTT on my Google Pixel 3 XL. -- ~$ sudo make love -j4 Error: 女朋友.c: 沒有此一檔案或目錄 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.216.26.95 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1636629247.A.D34.html

11/11 19:16, 4年前 , 1F
雪霸
11/11 19:16, 1F

11/11 19:19, 4年前 , 2F
幹 哭了 C#好像不能寫介面塞到別人臉上
11/11 19:19, 2F

11/11 19:20, 4年前 , 3F
我學rust可以領600萬嗎
11/11 19:20, 3F

11/11 19:20, 4年前 , 4F
哭了
11/11 19:20, 4F

11/11 19:20, 4年前 , 5F
C#最多就寫Extension吧
11/11 19:20, 5F

11/11 19:21, 4年前 , 6F
請問我學會能領600萬ㄇ
11/11 19:21, 6F

11/11 19:21, 4年前 , 7F
你可以寫兩組Extension插在A跟B類別身上
11/11 19:21, 7F

11/11 19:21, 4年前 , 8F
名稱取一樣的 裡面call各自對應的method
11/11 19:21, 8F

11/11 19:21, 4年前 , 9F
這樣call的時候就不用太在意到底是A還是B
11/11 19:21, 9F

11/11 19:21, 4年前 , 10F
但是很醜 感覺沒什麼意義 對ㄚ
11/11 19:21, 10F

11/11 19:21, 4年前 , 11F
大師
11/11 19:21, 11F

11/11 19:23, 4年前 , 12F
戀愛>\\\<
11/11 19:23, 12F

11/11 19:25, 4年前 , 13F
他們現在已經名稱一樣了
11/11 19:25, 13F

11/11 19:25, 4年前 , 14F
我只是想不管他們是A還是B都行無腦的使用
11/11 19:25, 14F
文章代碼(AID): #1XZFh_qq (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1XZFh_qq (Marginalman)