Changeset dfed1c for src/base/object.hpp
- Timestamp:
- Nov 22, 2011, 9:22:10 PM (14 years ago)
- Children:
- facba0
- Parents:
- 66f24d
- File:
-
- 1 edited
-
src/base/object.hpp (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/base/object.hpp
r66f24d rdfed1c 22 22 Object() : 23 23 registered(false) 24 {} 24 { 25 } 25 26 26 27 Object(std::string name_) : … … 29 30 { 30 31 ObjectInit(); 32 } 33 34 Object(const Object& other) : 35 name(other.name), 36 registered(other.registered) 37 { 31 38 } 32 39 … … 38 45 T* Cast() 39 46 { 40 T* casted = static_cast<T*>(this);47 T* casted = dynamic_cast<T*>(this); 41 48 assert(casted != NULL); 42 49 return casted; … … 56 63 { 57 64 public: 58 ObjectStorage(const T& val _) :59 val(val _)65 ObjectStorage(const T& val) : 66 val(val) 60 67 {} 61 68 62 ObjectStorage(std::string name _, const T& val_) :63 Object(name _),64 val(val _)69 ObjectStorage(std::string name, const T& val) : 70 Object(name), 71 val(val) 65 72 {} 66 73 67 74 T& Val() {return val;} 68 75 69 pr ivate:76 protected: 70 77 T val; 78 }; 79 80 template <class T> 81 class ObjectStorageArray : public ObjectStorage<T*> 82 { 83 public: 84 ObjectStorageArray(const vmg_int& size) : 85 ObjectStorage<T*>(new T[size]) 86 {} 87 88 ObjectStorageArray(std::string name, const vmg_int& size) : 89 ObjectStorage<T*>(name, new T[size]) 90 {} 91 92 virtual ~ObjectStorageArray() 93 { 94 delete [] this->val; 95 } 71 96 }; 72 97
Note:
See TracChangeset
for help on using the changeset viewer.
