Swift下标函数 - 允许多种返回类型

时间:2017-10-18 21:37:37

标签: swift matrix

我正在为swift创建一个Matrix库,它可以支持变量维矩阵(而不仅仅是标准的2D矩阵)。

它进展顺利,但我遇到了一个问题

我希望下标()函数返回值或值数组。

所以如果你有一个像这样的简单2D矩阵:

let a : Matrix<Int> = [[1, 2, 3], [4, 5, 6]] // constructs a Matrix 

用户可以像这样订阅这个矩阵:

b = a[1, 0] //returns 4

但是,如果用户订阅如下:

b = a[1] //returns [4, 5, 6]

所以基本上我希望这个函数有两种可能的返回类型,具体取决于上下文。我想这样做而不必返回元组/枚举/等。这样它就可以根据矩阵的尺寸自动推断出返回类型。这可能吗?

1 个答案:

答案 0 :(得分:1)

你很亲密,这是让你入门的东西。

我返回一个可选项以避免因索引范围错误而崩溃。

polymer-2-hybrid
相关问题