切换无意的循环

时间:2014-01-20 16:58:18

标签: c++

因此,当我选择时,先说出选项1。然后选择Active Directory,然后选择选项3将用户添加到组。它要求用户名。所以这没关系。但是当我输入用户名时,它会反复循环显示菜单,而不是提示组添加它们。我多年没有接触过C ++,而且我从来没有过强烈的好感。但只是寻找一些建议。甚至可能是一个更好的菜单系统。

void ActiveDirectoryMenu()
{
    do
    {
        cout << "\n1. Active Directory clean up\n2. Copy over use permissions";
        cout << "\n3. Add user to group\n4. Reset user password\n5. Enable - Disable account\n";
        cin >> tempChoice;

        switch (tempChoice) {
            case 1:
                ActiveDirectoryCleanUp();
                break;
            case 2:
                cout << "Execute copy";
                break;
            case 3:
                ActiveDirectoryAddGroup();
                break;
            case 4:
                cout << "Specify username: ";
                cin >> tempUser;
                cout << "\nDefault password: ";
                cin >> temp;
                break;
            case 5:
                cout << "Specify username: ";
                cin >> tempUser;
                cout << "\n1. Enable\n2. Disable\n";
                cin >> tempChoice;
        }
    }
    while (tempChoice != 6);
}
void ExchangeMenu()
{

}
void ActiveDirectoryCleanUp()
{
    cout << "Executing AD clean up....";
}
void ActiveDirectoryAddGroup()
{
    cout << "Specify user: ";
    cin >> tempUser;

    if (tempUser == "") {
        cout << "\nSpecify group: ";
        cin >> tempGroup;
    } else {
        cout << "Please enter valid user" << endl;
    }
}

2 个答案:

答案 0 :(得分:1)

你的意思是

  if (tempUser != "") {

而不是

  if (tempUser == "") {

我假设您在此处检查输入的用户名是否不是""。如果“”则提示输入无效名称。

答案 1 :(得分:0)

如果tempuser ==&#34;&#34;您只是要求群组。我怀疑你打算测试tempuser是否不等于&#34;&#34;。