以下代码打印一,二,三.对于所有C++编译器来说,这是否合乎需要?
class Foo
{
      const char* m_name;
public:
      Foo(const char* name) : m_name(name) {}
      ~Foo() { printf("%s\n", m_name); }
};
void main()
{
      Foo foo("three");
      Foo("one");   // un-named object
      printf("two\n");
}