这是我的代码:
TestPrivate.x
swift 2.0的指南说:
“私有访问将实体的使用限制在其自己的定义源文件中。使用私有访问来隐藏特定功能的实现细节。“
现在我在一个文件中写下了所有这些代码。
TestInternal.foo
应该可以看到 SELECT City,
SUM(IF(MONTH(DateColumn) = 1, AmountColumn, 0)) AS JanuaryTotal,
SUM(IF(MONTH(DateColumn) = 2, AmountColumn, 0)) AS FebruaryTotal,
. . .
SUM(IF(MONTH(DateColumn) = 12, AmountColumn, 0)) AS DecemberTotal
FROM YourTable
WHERE YEAR(DateColumn) = 2015
GROUP BY City
。现在可以了。
但有线的事情是当我尝试使用私有内部类来创建一个失败编译的实例时!这是一个错误吗?
答案 0 :(得分:2)
这不是错误。
private let z = TestPublic.TestInternal.TestPrivate()
这会使它编译。</ p>
没有private
指示符z
可以将私有类暴露给其他文件,因为其访问控制默认为internal
。
这就是快速控制访问的严格程度。