我想在不使用modf
的情况下提取双数的整数部分。
哪个更好static_cast<int>(x)
或(int)x
?
答案 0 :(得分:1)
在原始类型的引擎盖下,它们都完全相同。如果你只是将它分配给一个int变量,你甚至不需要强制转换,因为它会自动转换。我认为这只是一个偏好问题。我为原语let userQuery = PFQuery(className: "User")
userQuery.whereKey("username", equalTo: username)
userQuery.findObjectsInBackgroundWithBlock { (users, error) -> Void in
if error == nil {
if let objects = users {
for object in objects {
if let user = object as? PFUser {
self.userBio = user.objectForKey("bio") as! String
if user.objectForKey("icon") != nil {
self.userIcon = user.objectForKey("icon") as! PFFile
}
if user.objectForKey("header") != nil {
self.headerFile = user.objectForKey("header") as! PFFile
}
}
}
}
}
}
提供了c样式的强制转换,而对于需要处理继承等事情的C ++类类型,我使用了static_cast和dynamic_cast等。
请注意,根据您的编译器或系统处理负数,此行为可能不一致,即-6.4可能被截断为-6或下推至-7。