Informatikai Barkács Fórum

WORLD OF WARCRAFT SZERVER => Script => A témát indította: EroniX Dátum 2012 augusztus 25, 07:11:56 DÉLUTÁN

Cím: Új LootTemplate létrehozása
Írta: EroniX Dátum 2012 augusztus 25, 07:11:56 DÉLUTÁN
Videó: http://www.youtube.com/watch?v=I6bzLdDgBnc (http://www.youtube.com/watch?v=I6bzLdDgBnc)
Kép1: http://kepfeltoltes.hu/120825/loottemplate_www.kepfeltoltes.hu_.png (http://kepfeltoltes.hu/120825/loottemplate_www.kepfeltoltes.hu_.png)
Kép2: http://kepfeltoltes.hu/120825/loottemplate2_www.kepfeltoltes.hu_.png (http://kepfeltoltes.hu/120825/loottemplate2_www.kepfeltoltes.hu_.png)

Kedves fórumozók!
Egy olyan problémával fordulok hozzátok, aminek a megoldására sajnos önerőből nem tudtam rájönni.

A napokban láttam egy videót egy Transmog rendszerről. Ebben a videóban egy loot ablakot dob fel, a Transmogra felhasználható itemekről. Mondanom sem kell, hogy nagyon megtetszett az ötlet. Szépen ment is a dolog, egészen addig amíg nem kerültem szembe egy olyan hibával, ami egészen egyszerűen röhejes. A scriptben létre szerettem volna hozni egy "LootTemplate" mutatót de ezt a hibaüzenetet kaptam:
"'LootTemplate::LootGroup *' : unknown size"

Nem probléma, gondoltam (még akkor). Valahol a core csak készít egy objektumot és onnan szépen ki is lehet másolni. Végső soron meg is találtam hol, de a kódot átcopyzva is ezt a hibaüzenetet kaptam.

Azt hiszem mindent leírtam, előre is köszönöm a segítséget!
Cím: Re:Új LootTemplate létrehozása
Írta: zerus Dátum 2012 augusztus 25, 08:22:33 DÉLUTÁN
Egy kis segítség:
http://www.cplusplus.com/doc/tutorial/pointers/

A pointernek való érték adással elég nagy butaságot csináltál...
Cím: Re:Új LootTemplate létrehozása
Írta: EroniX Dátum 2012 augusztus 25, 08:53:11 DÉLUTÁN
a c++ szintaxis soha nemvolt a barátom, de továbbra se látok benne hibát...
Cím: Re:Új LootTemplate létrehozása
Írta: zerus Dátum 2012 augusztus 25, 09:08:41 DÉLUTÁN
A lényeg, a pointer azt a cél szolgálja hogy egy változó címére hivatkozz, ebből adódik hogy a pointernek nem lehet new-val értéket adni.

Először létrehozod az objektumot, majd csinálsz egy arra hivatkozó pointert.
Igaz, azt nem értem hogy miért pont pointerre van szükséged.
Cím: Re:Új LootTemplate létrehozása
Írta: EroniX Dátum 2012 augusztus 25, 09:19:27 DÉLUTÁN
Tévedsz...

class Test {
public:
   int a,b,c;
   Test() { a=b=c=10; }
};

int main() {
   Test *t;
   t = new Test;
   t = new(t) Test[5];
   return 0;
}


Test *t;
t = new Test;


Forrás: http://en.wikipedia.org/wiki/New_(C%2B%2B) (http://en.wikipedia.org/wiki/New_(C%2B%2B))