2016-04-13 16 views
-2

Şimdi bunu bir kaç saatliğine anlamaya çalışıyorum. Kullanıcıya bir seçim yapmasını ve seçimini döndürmesini istemek için getMenuChoice işlevini kullanacağımı varsayalım. Anahtar deyimindeki dönüşü nasıl kullanacağımı bilmiyorum. Çok karışık.Benim fonksiyonumda yanlış olan bu işlevin benim için dönmemesi için

#include <iostream> 
using namespace std; 

double milesToKilometers(); 
double kilometersToMiles(); 
void showMenu(); 
char getMenuChoice(); 
int main() 
{ 
    char choice; 
    do 
    { 
     showMenu(); 
     getMenuChoice(); 
     switch (toupper(choice)) 
     { 
     case 'A': 
      cout << milesToKilometers() << endl; 
      break; 
     case 'B': 
      cout << kilometersToMiles() << endl; 
      break; 
     case 'Q': 
      cout << "Closing" << endl; 
      break; 
     default: 
      cout << "Not Valid" << endl; 
      break; 
     } 
    }while (choice != 'Q'); 
    return 0; 
} 
double milesToKilometers() 
{ 
    cout << "Enter Miles:" << endl; 
    double m; 
    cin >> m; 
    m = m * 1.6093; 
    return m; 
} 

double kilometersToMiles() 
{ 
    cout << "Enter Kilometers: " << endl; 
    double k; 
    cin >> k; 
    k = k * .6214; 
    return k; 
} 
void showMenu() 
{ 
    cout << "A. Miles to Kilometers" << endl; 
    cout << "B. Kilometers to Miles" << endl; 
    cout << "Q. Quit" << endl; 
    return; 
} 
char getMenuChoice() 
{ 
    char choice; 
    cout << "Enter Choice: " << endl; 
    cin >> choice; 
    return choice; 
} 
+3

' seçim = getMenuChoice() olmalıdır işlev olarak. – songyuanyao

+0

Sadece arkadaşça bir ipucu, bu sayfada okumak isteyebilirsiniz: [Nasıl Yapılır Kılavuzu] (https://stackoverflow.com/help/how-to-ask) böylece her zaman sorularınızın olduğundan emin olabilirsiniz. kolayca cevaplanabilir ve olabildiğince açık. Yaşadığınız sorunu çözmek için yaptığınız tüm çabaları ve bu düzeltmeleri denediğinizde ne olduğunu eklemeyi unutmayın. Ayrıca, gösteri kodunuzu ve herhangi bir hata mesajınızı da unutmayın! –

cevap

0

İşleviniz, değişkeninize atamanız gereken değeri döndürür.

choice = getMenuChoice(); 

Temel öğeler var, ancak atamayı kaçırdınız.

1

Anahtarda seçili olan değişken başlatılmamış. `; Sen

getMenuChoice(); 

choice = getMenuChoice(); 
İlgili konular