Qt Creator 不能使用 const char*

Posted

技术标签:

【中文标题】Qt Creator 不能使用 const char*【英文标题】:Qt Creator Can't use const char* 【发布时间】:2013-12-09 02:17:45 【问题描述】:

我只是在使用 qt creator 进行测试,似乎喜欢它作为我的 C++ 的 gui。处理一些东西,似乎我不能使用 const char*!

如果我添加一个函数:

标题

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();
    const char* nativeStr(QString str1);

cpp

const char* nativeStr(QString str1)
    QByteArray ba = str1.toLocal8Bit();
    return (const char*)ba.data();

我得到错误(调试时):

LNK2019: unresolved external symbol "public: char const * -_thiscall MainWindow::nativeStr(class QString)" 9?nativeStr @MainWindow@@QAEPBDVQString@@@z) referenced in function "private: void __thiscall MainWindow::on_pushButton_clicked(void)" (?on_pushButton_clicked@MainWindow@@AAEXXZ)

File not found: mainwindow.obj

帮助?我不知道,我以前只用过win32 C++。

我也试过: 构建->清理所有 构建->运行 qmake

【问题讨论】:

尝试在您的项目中包含 cpp 文件。它不是编译器,或者它的目标代码没有被链接。 【参考方案1】:

您缺少函数名称的 MainWindow:: 部分:

const char* MainWindow::nativeStr(QString str1)
    QByteArray ba = str1.toLocal8Bit();
    return (const char*)ba.data();

【讨论】:

谢谢我忘记上课了……呃,我有时是个菜鸟。

以上是关于Qt Creator 不能使用 const char*的主要内容,如果未能解决你的问题,请参考以下文章

无法从 Qt Creator 部署 Qt 项目

Qt creator 直接文件包括

Qt creator运行出现moc文件错误求大神解答

在 Qt creator 的发布模式下设置断点

TestDisk 之Qt creator + MinGW +Qt +gdb

Qt Creator - 无法使用调试器:program.exe 不是可执行格式:文件格式无法识别