问题描述
此代码:
class B(d:Int,val b:Option[Int]) object A extends App { val c=new B(1) }
@H_404_5@在行
B(1)
上是错误的,我必须给值b
,例如new B(1,Some(2))
@H_404_5@我正在研究光滑,示例代码为:
final class MessageTable1(tag: Tag) extends Table[Message](tag,"message") {
@H_404_5@class Table位于文件main \ scala \ slick \ relational \ RelationalProfile.scala第119行:
abstract class Table[T](_tableTag: Tag,_schemaName: Option[String],_tableName: String) extends AbstractTable[T](_tableTag,_schemaName,_tableName)
@H_404_5@因此,
_schemaName
的类型为Option[String]
,但是当示例代码创建Table
时,似乎没有向其传递值,仅提供了其他两个参数:{{1 }}和tag
,为什么?解决方法
Three lines down,您可以看到
Table
具有辅助构造函数,其中两个参数分别为Tag
和String
类型(注意:否{ {1}})Option
这是在您显示的示例代码中调用的构造函数,而不是主构造函数。
您还可以在the documentation中看到这两个构造函数。