2014-01-05 3 views
1

Я искал через сайт и были ответы на конструктор по умолчанию или с помощью #pragma. Но я использую #pragma в моем Visual Studio и я пытался отладить но ни один из этих методов не работал. Расскажите, пожалуйста, где я сделал ошибку. СпасибоОшибка t 1 ошибка LNK2019: неразрешенный внешний символ "public: void __thiscall Login :: loginMenu (void)

это мой главный,

#include "stdafx.h" 
#include<iostream> 

#include "Login.h" 


using namespace std; 




int _tmain(int argc, _TCHAR* argv[]) 
{ 

Login log; 
log.loginMenu(); 


std::cin.get(); 
return 0; 
} 

login.h выглядит следующим образом, # прагма один раз

class Login 
{ 
public: 
void loginMenu(); 
}; 

и файл Login.cpp,

#include "stdafx.h" 
#include "Login.h" 

#include<iostream> 
#include<string> 

using namespace std; 


void loginMenu() 
{ 
int userType; 

do{ 

    cout << "Select 1 for STAFF" << endl; 
    cout << "Select 2 for HR MANAGER" << endl; 
    cout << "Select 3 for ADMINISTRATOR" << endl; 

    cout << "Please select your usertype"; 
    cin >> userType; 


    switch(userType){ 
    case 1: 
     cout << "You have selected STAFF"; 
     break; 
    case 2: 
     cout << "You have selected HR MANAGER"; 
     break; 
    case 3: 
     cout << "You have selected ADMINISTRATOR"; 
     break; 
    default: 
     cout << "Please make your choice by selecting from 1-3"; 
    } 
}while(userType==1,userType==2,userType==3); 


} 

Это простая программа, которую я создал, чтобы продемонстрировать «с использованием классов в отдельных файлах.

+0

Дубликат [Что такое неопределенная ссылка/неразрешенный внешний символ ошибки и как исправить это ?: Функция/переменная, объявленная в качестве члена класса, определен как глобальный (или наоборот)] (http://stackoverflow.com/a/12574403/902497). –

ответ

4

Вы указали и вызывают функцию Login::loginMenu - функцию-член класса Login - но вы ее не реализовали. Вы внедрили функцию ::loginMenu - автономную функцию, не являющуюся членом, но вы ее не вызываете.

Сделать

void Login::loginMenu() {...}