編寫一個接受字符串並基於它填充poco的方法時,最好是使用類似於Int32.Parse()
的靜態方法Parse(string s)
或重載構造函數,以便接受字符串?解析方法或重載構造函數
6
A
回答
9
我更喜歡構造函數版本,但兩者都很容易,因爲構造函數可以調用Parse
。這是一種模式,然後在Guid
結構(可能其他人也。)
我要補充一點,如果你不處理一個struct
,那麼static
方法或許應該指的是構造(或甚至因爲你不能在class
構造函數中分配給this
。
編輯:正如TrueWill指出的那樣,如果您確實包括Parse
,您也應該包括TryParse
。順便說一句,Guid
再次具有啓發性:Parse
方法實際上使用TryParse
,並且只是在TryParse
返回false
時引發異常。
0
我會推薦使用.Parse(字符串s)如果它是一個簡單的對象,如果對象存儲多於1-2個值,則應該使用構造函數,換句話說,如果返回值是實例不受解析值的影響。
2
如果該方法可能由於字符串無效而失敗,我會傾向於解析,並按照TryParse pattern包含TryParse。
+0
雖然id爲TryParse +1,但仍然使用dlevs,但也嘗試解析 – Manatherin
相關問題
- 1. C++構造函數重載解析具有多重繼承
- 2. Scala無法解析構造函數
- 3. 無法解析構造函數:'dojox.mobile.RoundRectCategory'
- 4. Android無法解析構造函數ArrayAdapter
- 5. 微調:無法解析構造函數
- 6. 無法解析構造函數'FirebaseListAdapter'
- 7. 構造函數\析構函數或對OOP的理解
- 8. 重載構造映射構造函數
- 9. 使用模板構造函數重載解析?
- 10. C#構造函數重載
- 11. 構造函數重載
- 12. C#構造函數重載
- 13. 構造函數重載
- 14. 構造函數重載。得到錯誤的解決方案
- 15. C#將雙數組傳遞給構造函數重載方法
- 16. 構造函數參數解析
- 17. 爲什麼DomainService構造函數重載顯示爲DomainContext構造函數重載?
- 18. VS2013無法解析外部的構造函數和析構函數
- 19. c#構造函數注入和構造函數重載
- 20. 構造函數和構造函數重載
- 21. 可以子類的構造方法重載超類的構造函數? 「java」
- 22. 重載結構構造函數
- 23. 在python中重載構造函數的更好方法?
- 24. 創建複製構造函數和重載的clone()方法
- 25. 重載Java中的構造函數和方法
- 26. C++結構:對重載函數的引用無法解析
- 27. 某個重載的構造函數能否顯示某些重載的方法?
- 28. 構造函數重載和類參數
- 29. 構造函數和析構函數
- 30. 構造函數和析構函數 - C++
爲了完整性+1。 – deepee1