• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

C++, Dynamiczne tablice obiektow

Object Storage Arubacloud
0 głosów
436 wizyt
pytanie zadane 4 sierpnia 2015 w C i C++ przez 0xf Dyskutant (8,180 p.)
Witam chce napisac program w ktorym podaje ile ma powstac obiektow i nastepnie przy kazdym wywolaniu obiektu ma sie wykonywac funkcja. Napisalem taki oto kod nie wiem gdzie lezy problem. (Dopiero zaczynam przygode z programowaniem obiektowym, nie znam definicji)

#include <iostream>

using namespace std;

class Tablet
{
    string nazwa;
    string model;
    int hz;
    float ram;
    int rdzenie;
    
    public:
    void wczytaj()
    {
        cout<<"Podaj nazwe tabetu : "; cin>>nazwa;
        cout<<endl<<"Podaj model"; cin>>model;
        cout<<endl<<"Podaj czestotliwosc procesora : "; cin>>hz;
        cout<<endl<<"Podaj ilosc pamieci RAM : "; cin>>ram;
        cout<<endl<<"Podaj ilosc rdzeni procesora : "; cin>>rdzenie
        }
    };

int main()
{
    int a; cin>>a;
    
    Tablet *tablica=new Tablet [a];
    for(int=0;i<a;i++)
    {
        tablica[i];
        tablica[i].wczytaj();
        }
    
    return 0;
    
    }

3 odpowiedzi

0 głosów
odpowiedź 4 sierpnia 2015 przez Patrycjerz Mędrzec (192,320 p.)

1. Do deklaracji ilości elementów tablicy stosuje się stałe. Użyj tam liczby const.

2. Po co wywołujesz w pętli tę linijkę:

tablica[i];

Przecież nie ma to żadnego sensu.

To chyba wszystko.

0 głosów
odpowiedź 4 sierpnia 2015 przez Rogargol Pasjonat (16,600 p.)
class Tablet
{
    string nazwa;
    string model;
    int hz;
    float ram;
    int rdzenie;
    
    public:
    void wczytaj();
    };

    void Tablet::wczytaj()
    {
        cout<<"Podaj nazwe tabetu : "; cin>>nazwa;
        cout<<endl<<"Podaj model"; cin>>model;
        cout<<endl<<"Podaj czestotliwosc procesora : "; cin>>hz;
        cout<<endl<<"Podaj ilosc pamieci RAM : "; cin>>ram;
        cout<<endl<<"Podaj ilosc rdzeni procesora : "; cin>>rdzenie;
    }

int main()
{
    int a;
	cin>>a;
    
    Tablet *tablica=new Tablet [a];
    for(int i=0;i<a;i++)
    {
        tablica[i].wczytaj();
    }
    
    return 0;
    
}

 

komentarz 4 sierpnia 2015 przez Dorion300 Szeryf (90,250 p.)
edycja 4 sierpnia 2015 przez Dorion300
To był PRZYKŁAD.

Po może się okażać że nie KAŻDY kompilator pozwala na NEW.
komentarz 4 sierpnia 2015 przez Patrycjerz Mędrzec (192,320 p.)

Jeśli uważasz że złym nawykiem jest to i to ponieważ jakiś kompilator C++ nie pozwala na korzystanie z new to ok, twoje zdanie.

Sam sobie przeczysz... 

komentarz 4 sierpnia 2015 przez Dorion300 Szeryf (90,250 p.)
Ups źle zedytowałem, dzięki za błąd w tekscie - już zedytowałem prawidłowo.
komentarz 4 sierpnia 2015 przez Patrycjerz Mędrzec (192,320 p.)

No widzisz, ale może nie kłóćmy się już. Rozumiesz o co mi chodzi, ja rozumiem, o co ci chodzi. Ja wyznaje zasadę standardów, ty tego, co działa i nikt nie kamienuje tego drugiego za to. Niech każdy robi, co chce.

I jeszcze jedno, patrz, co piszesz, bo widzisz, co z tego wynika smiley

Trzymaj się i programuj, jak ci się podoba!

komentarz 4 sierpnia 2015 przez Dorion300 Szeryf (90,250 p.)
także pozdrawiam i miłego programowania!
0 głosów
odpowiedź 4 sierpnia 2015 przez Rogargol Pasjonat (16,600 p.)
Jeszcze jedna ważna sprawa, musisz dołączyć biblioteke string jesli korzystasz ze stringow ;)

#include <string>

albo #include <string.h>

w zaleznosci od kompilatora.
komentarz 4 sierpnia 2015 przez 0xf Dyskutant (8,180 p.)
Uzywam codeblocks oraznc4droid i nie ma potrzeby. Dzieki za rade
komentarz 4 sierpnia 2015 przez Rogargol Pasjonat (16,600 p.)
Chyba, ze tak :)

Podobne pytania

0 głosów
1 odpowiedź 303 wizyt
pytanie zadane 23 października 2015 w C i C++ przez 0xf Dyskutant (8,180 p.)
0 głosów
1 odpowiedź 199 wizyt
0 głosów
2 odpowiedzi 4,106 wizyt
pytanie zadane 20 sierpnia 2015 w C i C++ przez 0xf Dyskutant (8,180 p.)

92,570 zapytań

141,422 odpowiedzi

319,643 komentarzy

61,958 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...