作为一个C++程序员,我正在尝试在Swift中进行一些元编程。例如,我想实现一个元函数来添加两个数字。我尝试了以下代码:
protocol IntWrapper {
class var value: Int { get }
}
struct A: IntWrapper {
static let value = 5
}
struct B: IntWrapper {
static let value = 7
}
struct Sum<T: IntWrapper, U: IntWrapper>: IntWrapper {
static let value = T.value + U.value
}
然而,这种方法并不起作用:Xcode会抱怨T.Type
没有成员value
(有时甚至会崩溃)。
如何实现这样的功能?