[問題] 用Where來限制泛型的問題...
如題,小弟想要用類似以下做法來做一個工具:
public void StartDelay<T>(Action _action,T _count)where T:int,float
{
if(_count.GetType() == typeof(float))
{
//do something
}
else if(_count.GetType() == typeof(int))
{
//do something
}
}
但是他會跳一個錯誤,似乎是int和float在where的約束上面會有衝突,
雖然我可以在函式內加一些防呆防止使用者用錯,但感覺不是很好=""=
希望能由compiler直接警告使用者,而不是執行到一半才跳錯
想請問有沒有辦法使用where來完成,或是類似的方式?
非常感謝~~
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.249.2.10
※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1441708310.A.6E5.html
→
09/08 18:37, , 1F
09/08 18:37, 1F
→
09/08 18:38, , 2F
09/08 18:38, 2F
對齁@@ 腦袋真的沒轉過來 非常感謝!
※ 編輯: jamod (36.233.20.131), 09/08/2015 20:18:24
C_Sharp 近期熱門文章
PTT數位生活區 即時熱門文章