Ho una lezione con a private char str[256];
e per questo ho un costruttore esplicito:
explicit myClass(const char *func)
{
strcpy(str,func);
}
Lo chiamo come:
myClass obj("example");
Quando compilo questo, ricevo il seguente avviso:
conversione obsoleta dalla costante di stringa in 'char *'
Perché sta succedendo?
strncpy(str, func, 255)
invece distrcpy(str, func)
una copia più sicura. E quindi non dimenticare di aggiungere '\ 0' alla fine della stringa poiché strncpy non lo aggiunge.