Az objektumhivatkozás nincs beállítva semmilyen objektumpéldányra [2016-os emelt szintű informatika érettségi] Hogyan oldjam meg?
Sziasztok. A 2016-os emelt infó érettségi programzás feladatával próbálkozok. Van egy txt fájl, amiben minden sorban egyetlen egy adat szerepel. Ez az adat lehet vagy termék vagy egy F betű. Ha F betű szerepel, akkor ez a vásárló már nem vesz mást, így más vásárló következik.
Struktúrával próbáltam megoldani a feladatot, de már az elején elakadtam. Úgy terveztem hogy lesz egy struktúrám és azon belül egy tömböm. És a struktúra tömbjébe fogom bepakolgatni a vásárolt. Így el lennének különítve a vásárlók és még a vásárolt termékeikre is tudnék hivatkozni.
Itt a programkód:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
namespace otszaz
{
class Program
{
struct kosar
{
public string[] termekek;
}
static void Main(string[] args)
{
kosar[] adatok = new kosar[1000];
StreamReader olvas = new StreamReader("penztar.txt");
string[] termekek = new string[20];
int i = 0;
int j = 0;
while (!olvas.EndOfStream)
{
string egysor = olvas.ReadLine();
if (egysor=="F")
{
i++;
j = 0;
;
}
else
{
adatok[i].termekek[j] = egysor;
j++;
}
}
Console.ReadKey();
}
}
}
A j++; sornál írja ki az "Az objektumhivatkozás nincs beállítva semmilyen objektumpéldányra." hibát.
Egyszerűen nem jövök rá mit rontottam el.
Tudnátok segíteni?
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
Valószínűleg nem, mert a feladatban külön kérték, hogy maximum ekkora legyen a tömb. De azért leteszteltem sokkal nagyobb tömbbel is, és úgysem működik.
Ha esetleg még visszanéznél, feltöltöttem Pastebin-re is: pastebin.com [PERJEL] D4QGuBFX
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
- Amennyit látni belőle, nekem az fura, hogy a struktúrában lévő termekek-nek és a "string[20]" ként létrehozott termekek-nek mi köze egymáshoz? Ez két külön tömb. Szerintem ez lesz a hiba, mert a struktúrában lévő termekek nincs definiálva.
- Praktikus lett volna i és j helyett valami beszédesebb indexeket használni.
- Az i indexelése 1-től indul. (i++ után használod fel.)
...
Kedves utolsó válaszoló!
Valóban az volt a hiba, hogy a struktúrában és a főprogramban lévő tömböm nem ugyanaz volt.
Köszönöm szépen a segítséget.
További szép napot!
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!