小编Tom*_*Lan的帖子

隐式转换将signedness'int'更改为'unsigned int'

我使用clang ++来编译程序,我需要在clang ++中编译它而没有错误.我没有得到其他编译器的错误.

代码中的错误行是

memset(grid_, 0, sizeof(int) * x_quadrants * y_quadrants);
Run Code Online (Sandbox Code Playgroud)

整个功能是这样的:

Ocean::Ocean(int num_boats, int x_quadrants, int y_quadrants)
{
  grid_ = new int[x_quadrants * y_quadrants];
  memset(grid_, 0, sizeof(int) * x_quadrants * y_quadrants);
  x_quadrants_ = x_quadrants;
  y_quadrants_ = y_quadrants;
  boats_ = new Boat[num_boats];
  num_boats_ = num_boats;

  stats_.hits = 0;
  stats_.misses = 0;
  stats_.duplicates = 0;
  stats_.sunk = 0;
}
Run Code Online (Sandbox Code Playgroud)

我正在使用memset所以当使用不同的驱动程序进行测试时,我不会得到垃圾值输出.没有必要为clang提供命令行,因为我不允许更改它.

c++ memset implicit-conversion

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

c++ ×1

implicit-conversion ×1

memset ×1