【发布时间】:2015-05-16 08:30:55
【问题描述】:
我尝试将两个 QString 合二为一。我读过很多关于:
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*' 到二进制 'operator+'
QString 结果 = p + n;
我怎样才能做到这一点?在这里使用 += 代替 + 也不起作用。
~一月
【问题讨论】:
-
您正在尝试查找不允许的两个指针的总和。您可能想要做的是将
QString作为引用或值传递。