【发布时间】:2019-08-01 14:24:28
【问题描述】:
我正在尝试构建一个项目来分发这个应用程序。 但是 - 这个应用程序,远远太旧了。 所以,我使用的是 Xcode 8.3.3 和 IOS Sierra。
我遇到了问题 SistemaCardapio/SistemaCardapioAppDelegate.m:60:28:隐式转换失去整数精度:'NSInteger'(又名'long')到'int'
ARC - 停用所有需要的构建项目。
我已经尝试过处理它,手把手地做,但是要修复的项目太多。
int timeOutParaImpressao = 0;
timeOutParaImpressao = [preferencias integerForKey:@"timeout_impressao"];
if (timeOutParaImpressao == 0) {
NSLog(@"sem timeout pra impressao definido");
timeOutParaImpressao = 20;
[preferencias setInteger:timeOutParaImpressao forKey:@"timeout_impressao"];
}
configuracoes.timeOutImpressao = timeOutParaImpressao;
我想删除这个警告,并在 Xcode 上编译项目。
【问题讨论】:
-
那么问题是什么?警告不会阻止编译项目,那么问题是什么?是你不知道该做什么,还是因为“项目太多”而你不想不想去做?还是您只是想压制警告并忽略它们,即使它们是正确的?
-
警告在理论上阻止了构建。那么有没有办法不阻止 - 问题中给出的警告正在完成构建?看,我有 1600 多个要修复,我今天要杀了它。
-
好吧,
int不是integer。所以int总是声明timeOutParaImpressao的错误方式,如果我们要继续使用integerForKey等。你可以修复它或不修复它,但如果你这样做,你会一个接一个地做.有多少或您的时间范围是多少,与我们无关。
标签: objective-c implicit-conversion implicit