Foo* foo = new Foo(a,v); Foo* foo = new(ptr,std::nothrow)Foo[]; Foo* foo = new(ptr)Foo(); Foo* foo = new(FOO(ptr))Foo(); Foo* foo = new ( ptr,std::nothrow ) Foo[]; Foo* foo = new ( ptr ) Foo(); Foo* foo = new ( FOO(ptr) ) Foo();