XCode的自动完成代码是否会误导程序员?

时间:2012-12-10 13:34:08

标签: xcode autocomplete grand-central-dispatch

当我在XCode中输入“dispatch_after”时,它会自动完成GCD代码,如下所示:

int64_t delayInSeconds = 2.0;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, delayInSeconds * NSEC_PER_SEC);
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
    <#code to be executed on the main queue after delay#>
});

让我们看一下这句话:

int64_t delayInSeconds = 2.0;

int64_t是“long long”的同义词,但是这里我们为这种变量delayInSeconds分配一个双精度值“2.0”。因此,该值的小数部分将被丢弃。如果为其赋值为“0.3” ,变量的值将为0.我认为这个代码模板会误导程序员,正确的代码应该是float delayInSeconds = 2.0;我是对的吗?提前致谢。

0 个答案:

没有答案