有时我在一个功能分支,但我做了一个无关的改变,我想在大师看到.我常常可以这样做:
git checkout master
git commit -m "..." filename
Run Code Online (Sandbox Code Playgroud)
但有时当我结帐时,我会收到一个警告,表示存在本地更改,因此我无法切换分支.
为什么这有时只会发生?当我看到这条消息时是否有解决方法?也许是藏匿?
给出以下Swift类:
class TestObject: NSObject {
let a: Int
init(a: Int) {
self.a = a
super.init()
}
}
func ==(lhs: TestObject, rhs: TestObject) -> Bool {
return lhs.a == rhs.a
}
Run Code Online (Sandbox Code Playgroud)
以及它的测试用例:
func testExample() {
let a = TestObject(a: 4)
let b = TestObject(a: 4)
XCTAssertEqual(a, b) // fails
let isEqual = a == b
XCTAssert(isEqual) // passes
}
Run Code Online (Sandbox Code Playgroud)
两个断言返回不同的值,但它们都应该通过.
我尝试编写自定义断言函数:
func BAAssertEquatable<A: Equatable>(x1: A, _ x2: A, _ message: String, file: String = __FILE__, line: UInt = __LINE__) {
let …Run Code Online (Sandbox Code Playgroud) 我正在使用NSURLConnectioniPhone应用程序,并且在发送initWithRequest:到我的NSURLConnection实例后界面似乎变慢了.我不确定这是否正在发生,因为我的处理代码需要很长时间来处理响应,或者是因为NSURLConnection它阻塞了主线程.
任何人都可以确认NSURLConnection将创建连接并在单独的线程上等待数据,然后在主线程上调用其委托方法吗?
谢谢!
在Xcode 3.x中,如果我更改了资源文件,我可以右键单击它并选择触摸以确保它将包含在下一个版本中.
我在Xcode 4中没有看到它.它已被删除了吗?
我开始将Swift文件添加到一个非常大的,不使用ARC的Objective-C项目中.
当我编译项目时,我会收到ProjectName-Swift.h桥头中发出的每个属性的警告:
似乎Swift正在发布基于ARC的Objective-C代码.
这是Swift特定版本中的限制/错误,还是Swift只能用于ARC代码?
规范的实现length :: [a] -> Int是:
length [] = 0
length (x:xs) = 1 + length xs
Run Code Online (Sandbox Code Playgroud)
这是非常漂亮的,但由于它使用线性空间而遭受堆栈溢出.
尾递归版本:
length xs = length' xs 0
where length' [] n = n
length' (x:xs) n = length xs (n + 1)
Run Code Online (Sandbox Code Playgroud)
不会遇到这个问题,但我不明白这是如何在懒惰的语言中以恒定的空间运行的.
运行时(n + 1)列表中的运行时是否累积了大量的thunks?这个函数Haskell不应该消耗O(n)空间并导致堆栈溢出吗?
(如果重要的话,我正在使用GHC)
我正在研究在Heroku上使用Scala/Play/Akka,我很好奇.假设我有一个应用程序结构化为Akka演员的网络.一些演员将与Web应用程序本身进行处理,但我可能希望将一个或多个节点留作专用的Akka演员:例如,一组缓存管理器演员.
要配置Akka远程处理,我需要提供IP地址akka.conf.但由于Heroku节点有些短暂,我在编写配置文件时不会知道每个节点的地址.
它可能会简化事情以拥有一个中央"注册"节点,但即使在那里,我也不会事先知道该节点的IP地址.
那么我的Akka节点如何在Heroku上相互引用呢?
我试图了解Scala的存在类型.
之间有什么区别:
def foo[X <: Bar] = 3
Run Code Online (Sandbox Code Playgroud)
和
def foo[_ <: Bar] = 3
Run Code Online (Sandbox Code Playgroud)
或者它们不仅仅是未命名的类型参数?
很多时候,我会Error从框架中收到一个Swift 对象,这真的是一个NSError.
为了访问它的信息(例如code),我需要将其转换为NSError:
(error as NSError).code == ....
Run Code Online (Sandbox Code Playgroud)
为什么这只是一个无条件的as?如果我设计我自己的符合的错误类Error,它不一定是一个NSError,那么这怎么可能是执行这个演员的正确方法?
类型系统中是否存在某种特殊情况?这是一个向下倾斜,表现得像一个向上倾斜.
在iPhoto中,我可以简单地将手指放在图像上以获得"复制"弹出窗口(就像您在文本框中看到的弹出窗口一样).
在我的UIImageView中,情况并非如此.我该如何启用它?