小编Vaj*_*ecz的帖子

从int转换为枚举

我已声明以下枚举:

  enum periods {one, five, ten, fifteen, thirty};
Run Code Online (Sandbox Code Playgroud)

现在我想在主函数中将它作为命令行参数传递.

int main(int argc, char* argv[]) {

  periods mp;
  if (argc == 2) {
      std::string min_prd(argv[2]);
      mp=atoi(min_prd.c_str());
 }
Run Code Online (Sandbox Code Playgroud)

并且编译器抱怨:

error: invalid conversion from ‘int’ to ‘periods’
Run Code Online (Sandbox Code Playgroud)

我做了atoi(),因为我认为枚举是一个int - 如何修复我的代码?

c++

2
推荐指数
1
解决办法
3124
查看次数

标签 统计

c++ ×1