«« ( Date ) »» // «« ( Thread ) »» // ri4pp - 2005

Greske u prilogu za DZ

by Dejan Milosevic
petak, 29. april 2005 - 21:02.

Naisao sam na sledece greske:
1) Struct::Struct (skind kind_): kind(kind_), elemType(*this) {}
Struct::Struct(skind kind_, Struct& elemType_): kind(kind_),
elemType(elemType_) {}

mora se inicijalizovati fields na NULL, npr.

Struct::Struct (skind kind_): kind(kind_), elemType(*this), n(0),
fields(NULL) {}
Struct::Struct(skind kind_, Struct& elemType_): kind(kind_),
elemType(elemType_), n(0), fields(NULL) {}

Ova ispravka je veoma bitna jer tab.dump() preko Obj.toString()
procesljava sve Obj-ove i sve njihove atribute pa zna da pukne ako je fields
neka slucajna vrednost!

2) U mikrojavi su samo "onedim. arrays" tako da u sledecem delu koda
treba izostaviti mogucnost "Arr of Arr of"

switch (type.kind) {

case Struct::None: strcat(sb,"notype"); break;

case Struct::Int: strcat(sb,"int"); break;

case Struct::Char: strcat(sb,"char"); break;

case Struct::Arr: strcat(sb,"Arr of ");

switch (type.elemType.kind) {

case Struct::None:
strcat(sb,"notype"); break;

case Struct::Int: strcat(sb,"int");
break;

case Struct::Char:
strcat(sb,"char"); break;

case Struct::Arr: strcat(sb,"Arr of
");

case Struct::Class:
strcat(sb,"Class"); break;

}

break;

case Struct::Class: strcat(sb,"Class");
objlist=type.fields; break;

}


Pitanje za prof.: da li da svako menja kod iz priloga kako mu se svidja ili
ce neko zvanican da skuplja sve prituzbe i objavljuje nove verzije?