Swift 声明count类的隐式变量?

Swift 声明count类的隐式变量?,swift,Swift,我试图声明一个变量,然后根据特定条件设置某种类型的类,因此: var tmodule if.. tmodule=ModuleInput(frame: CGRectMake(0,0,self.view.frame.size.width,self.view.frame.size.height)) if.. tmodule=ModuleOut(frame: CGRectMake(0,0,self.view.frame.size.width,self.view.frame.size.heigh

我试图声明一个变量,然后根据特定条件设置某种类型的类,因此:

var tmodule

if..
  tmodule=ModuleInput(frame: CGRectMake(0,0,self.view.frame.size.width,self.view.frame.size.height))

if..
 tmodule=ModuleOut(frame: CGRectMake(0,0,self.view.frame.size.width,self.view.frame.size.height))
我在声明中遇到错误,无法找到正确的方法。

应该是

t模块=模块输入

这没有任何意义。也许你的意思是:

var tmodule: ModuleInput //type annotation necessary here
//...
let frameSize = self.view.frame.size
tmodule = ModuleInput(frame: CGRectMake(0, 0, frameSize.width, frameSize.height)) //type inferred here

我做错了:请解释。我得到了错误,我在这里写的东西在语法上肯定是错误的。特别是任何错误?请看我的编辑。我认为这是非常错误的,你甚至不需要它。tmodule:ModuleInput这应该是关于去宽容的。如果你从那一行删除它,你的语法错误也应该消失。我想定义一个var,然后设置一些条件来决定应该应用哪个类,所以我有很多选择。这就是为什么我试图声明一个var,然后根据情况用class来设置它。是的,这将在您使用它时声明。您可以使用var-tmodule:AnyObject?如果你真的想把它说清楚的话。太蠢了。。。谢谢现在唯一的错误是var,Type annotation missing pattern我怀疑错误来自其他地方,对吗?您必须在声明行中注释一个类型,或者指定一个默认值,编译器可以推断其类型。但它并没有真正的帮助,因为OP想要使用不同的类型。哦,是的,我错过了
var tmodule: ModuleInput //type annotation necessary here
//...
let frameSize = self.view.frame.size
tmodule = ModuleInput(frame: CGRectMake(0, 0, frameSize.width, frameSize.height)) //type inferred here