运行失败,但是编译通过,请大伙帮助查错

运行失败,但是编译通过,请大家帮助查错
http://www.oschina.net/code/snippet_1582989_35880
源码链接

另外也请教大家一下,这段程序创建节点的方式好像也是通过new,那么没有手工回收的话是否也会存在内存泄露的问题?
------解决方案--------------------
除非是用智能指针,不然动态分配的内存都是要手动回收的。
------解决方案--------------------
编译和运行都可以成功,至于内存泄露是存在的,该程序中build()如果调用多次的话,P会不断的指向新内存,而之前申请的内存没有手动回收造成内存泄露