
11 Jul
2005
11 Jul
'05
9:25 p.m.
Andrey Melnikov <melnikov@simplexsoft.com> writes:
David Abrahams wrote:
Andrey Melnikov <melnikov@simplexsoft.com> writes:
char bar_placeholder[sizeof(std::string]; std::string *bar = reinterpret_cast<std::string*>(bar_placeholder);
reinterpret_cast is nonportable.
Why? I don't see any reasons why reinterpert_cast from char [] to std::string * could be nonportable.
The standard says so. It's implementation-defined. <snip>
I can't imagine how a compiler can avoid calling a non-trivial copy constructor like in case of std::string.
The standard says it can. -- Dave Abrahams Boost Consulting www.boost-consulting.com