У меня есть QString, которую я хотел бы преобразовать в char*, а не в QChar*, потому что я буду передавать ее в метод, который принимает char*, однако я не могу преобразовать ее, не получив константную char*. Например, я пробовал:
QString name = "name";
QByteArray byteArray = name.toUtf8();
myMailboxName = byteArray.constData();
и
QString name = "name";
QByteArray byteArray = name.toUtf8();
myMailboxName = byteArray.data();
где myMailboxName — частный char* в моем классе. Однако я получаю сообщение об ошибке, потому что он возвращает const char* и не может присвоить его char*. Как я могу это исправить?
char*. Назначьте егоchar const*. Почему вы храните указатели в долгосрочной перспективе? - person Lightness Races in Orbit   schedule 16.11.2012const char*- person David Rodríguez - dribeas   schedule 16.11.2012class Client { public: Client(); void init(QString name); void sendMessage(QString mess); private: char *myMailboxName, buf[MSG_SIZE]; struct mq_attr attr; mqd_t mq_ownBox, mq_centralBox; };я не знаю значение myMailboxName до запуска программы, и если бы я только что создал const char*, он вышел бы за пределы области действия после функции Я звоню с конца. - person Amre   schedule 16.11.2012