相关疑难解决方法(0)

将int转换为size_t

当我传递integer给一个时,我想知道clang编译器的以下警告std::initializer_list< size_t >:

non-constant-expression cannot be narrowed from type 'int' to 'unsigned long' in initializer list
Run Code Online (Sandbox Code Playgroud)

为什么可以int转换为a size_tint不能传递给a std::initializer_list< size_t >,即

int main()
{
  size_t s_t = 0;
  int    i   = 0;

  std::initializer_list<size_t> i_l = { i };            // warning
  s_t = i;                                              // no warning

  return 0;
}    
Run Code Online (Sandbox Code Playgroud)

c++ casting initializer-list

4
推荐指数
2
解决办法
5015
查看次数

标签 统计

c++ ×1

casting ×1

initializer-list ×1