From the Blender Python API:
unlink(object) Unlink object from scene
Parameters: object (Object, (never None)) – Object to remove from scene
Does the object directly get removed from the scene or rather the ObjectBase which links to the Object and hence the Object gets removed too?
DNA_scene_types.h,struct Scene.baseis a linked list ofBasetypes.scene.chas most functions for manipulating these. Search forsce->basein this file. – ideasman42 Sep 18 '13 at 22:16