Я пытаюсь добавить два QStrings в один. Я много читала о:Как объединить два QStrings в один?
QString NAME = QString + QString
, но это не помогает мне здесь. Вот как мой код выглядеть так далеко:
test.h
#ifndef TEST_H
#define TEST_H
#include <QString>
#include <QFile>
#include <QDir>
class Test
{
public:
void createProject(QString* p, QString*n);
};
#endif // TEST_H
test.cpp
#include "test.h"
#include <QFile>
#include <QString>
#include <QDir>
void Test::createProject(QString *p, QString *n)
{
QString result = p + n;
QDir dir(result);
if (dir.exists())
{
// ok
}
else
{
printf("Error!\n");
}
}
(игнорировать код о проверке, если каталог существует, кстати, я использование Qt 4.8.6)
Так что теперь, когда я пытаюсь скомпилировать, я получаю эту ошибку:
test.cpp: In member function 'void Test::createProject(QString*, QString*)': test.cpp:8:21: error: invalid operands of types 'QString*' and 'QString*' to binary 'operator+'
QString result = p + n;
Как я могу сделать эту работу? Также использование здесь + = вместо + не работает.
~ Jan
Вы пытаетесь найти сумму двух указателей, которые не допускаются. То, что вы, вероятно, хотите сделать, это передать 'QString' в качестве ссылок или значений. – Predelnik