【发布时间】:2018-03-23 15:44:36
【问题描述】:
我正在争论是否可以摆脱编译器警告。警告来自将 uint32 与 -1 进行比较。
现在仅仅看一眼,这似乎是一件不明智的事情,因为 uint32 永远不应该是负数,但我没有编写这段代码,也不熟悉 c++ 的做事方式,所以我问你。下面是一些示例代码来说明正在发生的事情。
bool isMyAddressValid = false;
unsigned int myAddress(-1);
unsigned int translatedAddress;
if(isMyAddressValid)
{
translatedAddress = 500;
}
else
{
translatedAddress = -1;
}
myAddress = translatedAddress;
if(myAddress == -1)
{
std::cout << "ERROR OCCURED";
}
else
{
std::cout << "SUCCESS";
}`
那么这是有效的代码吗?这是不是我不太理解的Cism?
【问题讨论】:
标签: c++ error-handling compiler-warnings uint32 int32