Здрасьте. Так получилось, что мне внутри программы приходится передавать список имён файлов одной строкой (это связано со способом работы QtSingleApplication). Сейчас сделано так:
/* Калька с магического числа из файлов моей
* программы -- 0xD3ADB00B.
* Тут могло быть любое другое слово, не применяемое
* нормальными людьми в названиях файлов. */
static const QString k_magic_word = "DEADBOOBISSODEAD";
// Объединяем:
QStringList files = app.arguments();
files.removeAt(0);
QString message = files.join(k_magic_word);
// Разъединяем:
QStringList file_names;
file_names = message.split(k_magic_word);
Короче, разделяя файлы этим словом, вероятность того, что операция пройдёт не успешно (то есть что какой-то файл содержал в себе это слово) пренебрежительно мала.
Но не нравится мне такое дело. Туповато как-то.
Как нормальные люди это делают?