c++ - 在 C++ 中返回结构

标签 c++ methods struct return

我知道这个问题已被问过一百万次,但我看了这么多答案,但没有一个有用。

基本上我正在创建一个登录表单,我需要返回一个包含电子邮件、密码和一个 bool 值的结构,以告知是否记住指定的登录信息。

我有一个名为 Database 的类,它由“database.cpp”和“database.h”组成。在头文件中,我有:

public:
    typedef struct{
        QString email;
        QString password;
        bool remember;
    }LoginInfo;

    LoginInfo getLoginInfo();

然后在源文件中,我有:

LoginInfo Database::getLoginInfo()
{
    LoginInfo data;
    data.email = QString("email@example.com");
    data.password = QString("test12345");
    data.remember = true;

    return data;
}

我似乎得到的错误是我在“Database::getLoginInfo()”之前需要一个分号,并且当我只有一个分号时我重新定义了 Database::getLoginInfo()。

我对 C++ 了解不多,这实际上是我第一次使用结构,但我有 Java 和 Python 的编程经验。因此,我仍然可以被认为是 C++ 的“菜鸟”,我确信我在代码中留下了一些愚蠢的错误。

是的,如果你能帮助我,那就太好了。但是就像我说的,我已经尝试让它工作大约 2 个小时,但没有成功,我已经放弃搜索了。

最佳答案

该结构被定义为类的成员,因此您需要使用:

Database::LoginInfo Database::getLoginInfo()

关于c++ - 在 C++ 中返回结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23556683/

相关文章:

c++ - std::cout<< ' ' <<std::endl;输出一个数字;为什么?

c++ - 这个方程如何 x + y = x & y + x | y 成立(假设 x, y > 0)?

c++ - 替代函数包装器

ruby - Ruby 类方法是线程安全的吗?

iphone - 从另一个方法隐藏 subview

c++ - 将 char 类型转换为字符串时,代码始终返回 255 或 -1073741819

c++ - 在 C++ 中将数据添加到 struct addrinfo

struct - 我如何声明我想要一个包含对实现特征的东西的引用的结构?

c - 当在 DLL 或 .so 中调用函数时,当编译器使用对齐和填充进行自己的结构布局时,为什么传递结构是可靠的?

java - 如何使用 String.format() 打印两个对象