簡體   English   中英

在 class 定義中使用 T

[英]Using T in class definition

我有必須從JSON讀取 arrays 的問題,它可以包含字符串、整數或雙精度數。 C# 不喜歡混合 arrays,我收集了,特別是T[]不起作用,因為一行可以包含混合。

這可行嗎?

class Entry {
   T value;
}

別處:

var Row = new Entry[10];

這會允許混合數組嗎? Entry 的構造函數應該是什么樣的?

您可以考慮創建一個Either ,其靈感來自於函數式語言。

一個易於導入的實現:

https://github.com/mcintyre321/OneOf

IE:


var row = new OneOf<double,int,string>[10]

或者您可以自己實現並在此過程中學到很多東西:

https://blog.ploeh.dk/2022/05/09/an-either-monad/

或者,Newtonsoft 有一個 JObject class,它具有您可能需要的一些邏輯。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM