la conversión de int a enumeración

He declarado la siguiente enumeración:

  enum periods {one, five, ten, fifteen, thirty};

y ahora quiero pasarlo como un argumento de línea de comandos en mi función principal.

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

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

y el compilador se queja:

error: invalid conversion from ‘int’ to ‘periods’

Hice atoi () porque pensé que enum es un int. ¿Cómo arreglo mi código?

Respuestas a la pregunta(4)

Su respuesta a la pregunta