diff --git a/f8/utils.h b/f8/utils.h index bd0ba1f..87bed9c 100644 --- a/f8/utils.h +++ b/f8/utils.h @@ -57,13 +57,13 @@ namespace f8 a8::CsvReader reader; reader.Load(filename); while (reader.NextLine()) { + T* obj = new T(); a8::reflect::Field* fields = cls->GetDeclaredFields(); for (int i = 0; i < cls->FieldNum(); ++i) { a8::reflect::Field& field = fields[i]; if (field.subtype != a8::reflect::EST_SIMPLE) { abort(); } - T* obj = new T(); void* p = (void*)obj + field.offset; switch (field.type) { case a8::reflect::ET_INT32: @@ -102,8 +102,8 @@ namespace f8 } } obj->__flags__.set(i); - meta_list.push_back(obj); } + meta_list.push_back(obj); } }