Мне нужны некоторые предопределенные константные строковые литералы c-style в моем коде на C++.Применить const_cast к строковому литералу?
Могу ли я использовать const_cast<char *>
непосредственно в строковом литерале?
I.E., является ли это законным (и это хорошая идея) для обычной ожидающей аргумента char*
только для чтения?
const_cast<char*>("PIOFLAG")
Или я просто использовать char *pf="PIOFLAG"
и использовать pf
в качестве аргумента?
Вы намерены изменить эти строки? Если это так, вы не можете полагаться на литерал для записи. –
Нет, мне не нужно его изменять, просто прочитайте. Но API имеет 'char *', а не 'const char *' –
Не можете ли вы использовать встроенные массивы? 'char pf [] =" PIOFLAG ";'. – mfontanini