0
A
回答
3
在理論(在IL級)基本上有三個成員組成的事件:
- 添加
- 刪除
- 提高
您可以通過一個單獨訪問每個那些EventInfo
property(AddMethod
,RemoveMethod
,RaiseMethod
)並檢查它們中的每一個的訪問修飾符。對於在C#中聲明的事件,我希望沒有提升方法,並且添加/刪除方法具有相同的可訪問性。
相關問題
- 1. Delphi訪問修飾符
- 2. 內部訪問修飾符
- 3. 庫級訪問修飾符
- 4. 動態訪問修飾符
- 5. 練習訪問修飾符
- 6. 類訪問修飾符
- 7. 保護訪問修飾符
- 8. 通過訪問修飾符
- 9. 包訪問(protected修飾符)
- 10. Java訪問修飾符:無修飾符與「默認」
- 11. 訪問修飾符C# - 內部修飾符
- 12. 訪問修飾符VS屬性
- 13. Java訪問修飾符優先
- 14. 成員類訪問修飾符
- 15. C++子類訪問修飾符?
- 16. 訪問Javascript中的修飾符
- 17. 訪問修飾符的內部類
- 18. 在java中訪問'final'修飾符類
- 19. 什麼是訪問修飾符
- 20. 名稱空間的訪問修飾符
- 21. 類和訪問修飾符在.NET
- 22. C#訪問修飾符與傳承
- 23. 函數的SQL Server訪問修飾符
- 24. 缺少「框架級」訪問修飾符
- 25. python - 嵌套類訪問修飾符
- 26. 訪問修飾符的正確應用
- 27. 關於java最終訪問修飾符
- 28. 爪哇 - 保護的訪問修飾符
- 29. 自動重構訪問修飾符
- 30. 瞭解默認訪問修飾符
這很聰明。 EventInfo的每種方法都應該有相同的修飾符,是嗎? – marty 2015-02-09 13:03:35
@marty:不一定。例如,我可以想象公共添加/刪除,但私人提升。並不是說C#編譯器完全使用了raise。公開添加但私下刪除會很奇怪 - 但我沒有檢查IL中是否會失效。 (至少在C#中沒有辦法代表它。) – 2015-02-09 13:49:50
你說得對,C#不允許用任何修飾符聲明添加/刪除方法訪問器。它不支持爲raise方法聲明自定義訪問器。那麼,raise方法是默認聲明的嗎? – marty 2015-02-09 19:27:47