Присвоение символов членам массива данных - PullRequest
0 голосов
/ 01 июня 2019

Каков наилучший способ назначить символ члена массива в классе?

Я пытался использовать это

   void setName(char a[]) {
      strcpy(name, a);
   }

, но это дает мне ошибку

strcpy небезопасен ...

1 Ответ

1 голос
/ 01 июня 2019

Потому что это может привести к переполнению буфера!

Можно избежать одного решения strcpy().

Вместо этого используйте строку, которая уже есть в C ++!

void setName(char a[]) {
        std::string a_str = a;
        name = a_str;
}

Примечание: Не забудьтеопределить имя следующим образом:

std::string name;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...