我尝试将两个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:在成员函数'void Test :: createProject(QString *, QString *)':test.cpp:8:21:错误:类型'QString *'的操作数无效 和'QString *'到二元'运算符+'
QString结果= p + n;
我该如何使这项工作?另外使用+ =而不是+在这里不起作用。
~Jan
答案 0 :(得分:3)
确实,您要将其地址添加为p
,而n
是指针。尝试将其值添加为:
QString result = *p + *n;