为什么new的放置语法需要#include解决思路

为什么new的放置语法需要#include<new>
普通的new一个对象或者对象数组,直接写new就可以了。 
为什么放置语法要求#include<new>?这是C++标准规定的吗? 
  
VC10上面的<new>我打开看了一下,就是重载的6个operator new和delete。那么非放置的语法为什么不包含<new>也能运行,放置语法就一定要包含它呢?
 

------解决方案--------------------
c++2003标准规定
The following allocation and deallocation functions
(18.4) are implicitly declared in global scope in each translation unit of a program
void* operator new(std::size_t) throw(std::bad_alloc);
void* operator new[](std::size_t) throw(std::bad_alloc);
void operator delete(void*) throw();
void operator delete[](void*) throw();
所以不用包含,但new-placement用的是两个参数的operator new,不在隐含声明里面