How can one use the [] referencing operator when working with a pointer to a vector of objects?
For example, I would like to do something like the following:
vector<OBJECT>* index;
if(type == 1) {
index = &room[target.roomid].obj;
} else if(type == 2) {
index = &character[target.charid].obj;
}
if(index[id]->is_container) {
index[id]->container[0].curnum = 0;
index[id]->container[0].volume = 0;
}
if(index[id]->is_counter) {
index[id]->counter[0].curnum = 0;
index[id]->counter[0].volume = 0;
}
if(index[id].is_rug) {
index[id]->rug[0].curnum = 0;
index[id]->rug[0].volume = 0;
}
However, I get this error:
c:\objects.cpp(498): error C2819: type 'std::vector<_Ty,_Ax>' does not have an overloaded member 'operator ->'
with
[
_Ty=OBJECT,
_Ax=std::allocator<OBJECT>
]
Any help on how I can use a pointer to a vector of objects would be much appreciated. Thank you.
[edited by - Kranar on August 19, 2003 6:48:37 AM]