C++ 如何获取c+中函数的返回值+;

C++ 如何获取c+中函数的返回值+;,c++,login,C++,Login,我通常尽量不提问题,但这让我困惑了一段时间。所以我的问题是如何在下面的代码中检查“if语句”中字符串HomeWTD的值 Main.cpp: #include "Header.h" using namespace Header; void main() { Home(); if (NEED HELP HERE) { } } 标题h: #include <iostream> #include <string> #include <f

我通常尽量不提问题,但这让我困惑了一段时间。所以我的问题是如何在下面的代码中检查“if语句”中字符串HomeWTD的值

Main.cpp:

#include "Header.h"

using namespace Header;

void main()
{
    Home();
    if (NEED HELP HERE)
    {
    }
}
标题h:

#include <iostream>
#include <string>
#include <fstream>
#include <Windows.h>

//Create A Namespace called "Header"
namespace Header
{
    using namespace std;
}

//Functions
string Home()
{
    string HomeWTD;
    string LoginTxt = "Login";
    string RegisterTxt = "Register";
    string OptionsTxt = "Options";
    string CreditsTxt = "Credits";
    string QuitTxt = "Quit";
    string HomeHeaderMsg = "   Home   ";

    cout << HomeHeaderMsg;
    cout << "----------" << endl;
    cout << LoginTxt << endl;
    cout << RegisterTxt << endl;
    cout << OptionsTxt << endl;
    cout << CreditsTxt << endl;
    cout << QuitTxt << endl << endl;

    getline(cin, HomeWTD);

    return HomeWTD;
}

void Register()
{
    string UsernameIn;
    string PasswordIn;
    string UsernameOut;
    string PasswordOut;

    getline(cin, UsernameIn);
    getline(cin, PasswordIn);

    ofstream UserFile;
    UserFile.open(UsernameIn + ".UserSav");
    UserFile << PasswordIn;
};
#包括
#包括
#包括
#包括
//创建名为“Header”的命名空间
名称空间标头
{
使用名称空间std;
}
//功能
字符串Home()
{
字符串HomeWTD;
string LoginTxt=“Login”;
字符串registerText=“寄存器”;
字符串选项txt=“选项”;
string CreditsTxt=“Credits”;
string QuitTxt=“退出”;
字符串HomeHeaderMsg=“Home”;

不能保存结果并稍后比较:

string result = Home();
if( result == "foo" ) {
    ...
}
或者内联使用结果:

if( Home() == "foo" ) {
    ...
}

<> >使用<代码>()/<代码>就像使用HOMWTD./P>的值,所以你不喜欢尝试一个基本的C++教程?<代码>命名空间标题{使用命名空间STD;}什么?<代码>(需要帮助)
我在你的程序中找不到一种方法让这个条件值计算为
true
,所以我只能假设你今晚不需要帮助。只要!@EJP:只要下面所有的木偶继续回答这样的问题?是的,他会这么想。@paddy:请阅读。我得到了错误:表达式一定有布尔蒂pe或可转换为bool。二进制字符串运算符
==
返回bool。您可能没有按照我的建议执行操作,或者错误出现在代码的其他部分。好的,谢谢,我会查看一下。另一种可能是您在此之前有错误。例如,
字符串
不存在于主程序中。您导入他将
std
名称空间放在
header
名称空间下的标题中。我不相信在导入
标题
名称空间时,默认情况下它会在那里。请尝试在cpp文件中
使用名称空间std;
,或者将
字符串
完全限定为
std::string
。您将调用函数两次。给定OP已经在努力理解C++,这会给他们错误的想法。@帕迪,我想这会起作用。我怎么能解决它?“帕迪,别介意。我知道怎么解决它。你真的觉得有资格回答C++问题吗?”帕迪是的,我回答了其他问题。我也在一个不同的论坛上,我给出了正确的答案。r很多次。我只是搞砸了一次。而且,我做了一个程序,里面有很多类似的东西。我注意到你们用一些几乎和我完全一样的东西回答了那个问题。
#include "Header.h"

using namespace Header;

void main()
{
    string answer = Home();
    if (answer == "something")
    {
       ...
    }
}