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!
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...
a c++ szintaxis soha nemvolt a barátom, de továbbra se látok benne hibát...
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.
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))