Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Program wyłącza się po uruchomieniu i kompilacji

Ostatnio zmodyfikowano 2016-02-12 08:26
Autor Wiadomość
Galixxon031
Temat założony przez niniejszego użytkownika
Program wyłącza się po uruchomieniu i kompilacji
» 2016-02-11 21:06:04
C/C++
#include <iostream>
#include <cstdlib>
#include <conio.h>
#include <string>
using namespace std;


class User
{
public:
   
    static int UserNumber;
    string Pass, Name;
};
int User::UserNumber = 0;

void Setup( User Users[] );
void selectMenu( int NumberUsers, User Users[] );
void Show( User Users[] );



void Setup( User Users[] )
{
    User Admin;
    Admin.Name = "Admin";
    Admin.Pass = "Password";
    Admin.UserNumber = 1;
   
}


void Show( User Users[] )
{
    User ToLoop;
    cout << "ID\tNazwa" << endl;
    for( int i = 0; i < ToLoop.UserNumber; i++ )
    {
        string text = Users[ i ].Name;
        cout << text;
    }
}
int main()
{
    User ToRef;
    User Users[ ToRef.UserNumber ];
    Setup( Users );
   
    selectMenu( ToRef.UserNumber, Users );
   
   
    return 0;
}
void selectMenu( int NumberUsers, User Users[] )
{
    Show( Users );
    User ToRef;
    char wybor;
    cout << "\n\nWybierz akcje: \n0 - Dodaj Uzytkownika\n1 - Wybierz Uzytkownika\n2 - Usun Uzytkownika\n3 - wyjdz\n\t";
    wybor = getch();
    if( static_cast < int >( wybor ) >= 48 && static_cast < int >( wybor ) <= 51 )
    {
        switch(( static_cast < int >( wybor ) ) )
        {
            case( 51 )
                : exit( 1 );
           
            case( 50 )
                : system( "CLS" );
            selectMenu( ToRef.UserNumber, Users );
        }
       
    }
}
Nie mam pojęcia dlaczego komputer awaryjnie zamyka aplikację po próbie uruchomienia.'
Program ma na celu przechowywanie bazy użytkowników jako obiektów któremu można przyporządkować nazwę oraz PIN.
Program miał również posiadać opcje dodawania użytkowników,usuwania ich oraz możliwości zalogowania się na dany profil użytkownika.
Będę wdzięczny za pomoc.
P-144768
marcolo2307
» 2016-02-11 22:50:49
Tworzysz tablicę o wielkości 0. Daj w UserNumber co najmniej 1 i będzie działać.
P-144770
mateczek
» 2016-02-12 08:26:13
w ogóle błędne podejście do tablic !!! tablicę albo deklarujesz z zapasem ustalasz rozmiar tej tablicy powiedzmy z zapasem na 20 użytkowników
Albo jeśli nie znasz liczby to musisz deklarować dynamicznie !!!

Napisz co chcesz osiągnąć!!! bo po kodzie ciężko się domyślić !!!

C/C++
// ta funkcja nic nie robi tablice przeazujesz nie używasz
void Setup( User Users[] )
{
    User Admin; //wypełniasz obiekt lokalny bez znaczenia dla programu
    Admin.Name = "Admin";
    Admin.Pass = "Password";
    Admin.UserNumber = 1;
   
} //obiekt przestaje istnieć


int main()
{
    User ToRef;
    User Users[ ToRef.UserNumber ]; // co to miało być?? deklarujesz tablice (błędnie) bez jej używania
    Setup( Users ); // przekazujesz tablicę ale po co ?? 
   
    selectMenu( ToRef.UserNumber, Users );
   
   
    return 0;
}
P-144774
« 1 »
  Strona 1 z 1