why do i get warning in declaration of new

pn= new (nothrow) string [11];

pn[1]=" Aluminum Gold Engraved ";
pn[2]="Aluminum Silver Engraved";
pn[3]=" Stainless Brass ";
pn[4]=" Stainless Steel ";
pn[5]=" Acrylic Imprint ";
pn[6]=" Acrylic Engraved ";
pn[7]=" Aluminum Mirrorized ";
pn[8]=" Impact Plastic ";
pn[9]=" Magnet Pair ";
pn[10]="US Safety Pin";

warning:

warning C4291: 'void *__cdecl operator new(unsigned int,const struct std::nothrow_t &)' : no matching operator delete found; memory will not be freed if initialization throws an exception
d:\microsoft visual studio\vc98\include\new(36) : see declaration of 'new'
You're using an outdated version of your compiler that doesn't handle the nothrow version of new gracefully.

array access begins at pn[0].

i choose to start it in pn[1] so the end user will not be confuse with the exit. how to fix this warning?
Topic archived. No new replies allowed.