HELLO PLS SPARE ME FROM DAT QUESTION.........
Ananth <[EMAIL PROTECTED]> wrote: Vic Wagner <[EMAIL PROTECTED]> wrote:
> Ananth wrote:
> > Scott Meyers (and the standard) clearly instruct not to treat arrays
> > polymorphically in C++.
> > Because compiler has no means of finding out whether heap objects
> > pointed by base class pointers are base class objects or derived class
> > objects. Program will bomb when deleting array of base class pointers
> > pointing to derived class objects.
> >
> > I understand his advise, makes perfect sense, no issues there.
> > But MSVC doesn't comply to Scott's advise: deleting an array of base
> > class pointers pointing to derived class objects works perfectly fine
> > in MSVC. But bombs in other popular compilers.
> >
> > I'm not bothered about porting in my project, its all MFC code anyway,
> > so porting is a non-issue. Any reasons why I should follow Scott's
> > advise "for my\any projcet in MFC\MSVC"?
> > I googled on this topic and found few threads. They talk about same
> > thing: works on MSVC, bombs on other compilers.
> > But could not find a thread on why I shouldn't treat array
> > polymorphically in MSVC. The only reason I could think of is to fall
> > into the trap of thinking MSVC behavior is also available on other
> > compilers, I'll face issues when using some other compiler.
> > But as long as I keep that in some corner of my mind, I see no reason
> > why arrays should not be treated polymorphically when using MSVC.
> >
> > Please let me know your thoughts.
> >
> > Cheers
> > - Ananth
> >
> Do what you want, but I can guarantee you won't remember this is a
> possible problem
> why are you using arrays anyhow??
No, I'm not using above array code in my professional programs. It was
like a college assignment: wanted to try out and see how the code
described in Scott Meyer's book bombs, so wrote a test program. But to
my surprise it ran perfectly well in MSVC.
Cheers
- Ananth
---------------------------------
5, 50, 500, 5000 - Store N number of mails in your inbox. Click here.
[Non-text portions of this message have been removed]