我如何将两个qstring组合成一个

How can I combine two QStrings into one?

本文关键字:组合 一个 qstring 两个      更新时间:2023-10-16

我尝试将两个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+'

我怎样才能使它工作?在这里用+=代替+也不行。

1月

~

确实,您正在添加它们的地址,因为pn是指针。尝试将它们的值添加为:

QString result = *p + *n;