我刚刚加入了一个拥有数千行代码的团队,例如:
int x = 0;
x=something();
short y=x;
doSomethingImportantWith(y);
编译器给出了很好的警告说:将 XX 位类型值转换为“短”会导致截断。有人告诉我,没有真正发生截断的情况,但我对此表示严重怀疑。
有没有一种很好的方法可以在每个案例中插入支票,效果如下:
if (x>short.max) printNastyError(__FILE,__LINE);
在每次分配之前?手动执行此操作将花费比我想使用更多的时间和精力,并且编写一个脚本来读取警告并将这些内容添加到正确的文件以及所需的包含似乎有点过头了——尤其是因为我希望有人已经这样做(或类似的事情)。
我不关心性能(真的)或除了知道这些问题何时发生之外的任何事情,所以我可以只修复真正重要的问题,或者我可以说服管理层这是一个问题。