Box2d Complex Polygon example code question

Hi all,

As I’m learning C++ while learning OFX some things are not always that clear to me at first…
I’m having trouble understanding this line in the ComplexPolygon example of the box2d addon:

shared_ptr<ofxBox2dPolygon> poly = shared_ptr<ofxBox2dPolygon>(new ofxBox2dPolygon);

Can someone more experienced shed some light on this?