X
X X
void fun1()
{
return delete (new int);
}
compiles, but
void fun2()
{
return delete (new std::string);
}
does not.
void fun3()
{
return (void) delete (new std::string);
}
compiles.
further, if I define a empty class
Class A {};
void fun4()
{
return delete (new A);
}
compiles
Does somebody knows
1) the reason why fun2() does not compile?
2) will the cast to void in fun3 introduce some side-effects/bugs ?
Thanks much.
{
return delete (new int);
}
compiles, but
void fun2()
{
return delete (new std::string);
}
does not.
void fun3()
{
return (void) delete (new std::string);
}
compiles.
further, if I define a empty class
Class A {};
void fun4()
{
return delete (new A);
}
compiles
Does somebody knows
1) the reason why fun2() does not compile?
2) will the cast to void in fun3 introduce some side-effects/bugs ?
Thanks much.