MGlobal::setActiveSelectionList()

The global active selection list can be copied through:

MGlobal::getActiveSelectionList()

This returns an MSelectionList and makes a copy of the list.

Any changes you might make through MSelectionList methods will not affect the global list unless you use:

MGlobal::setActiveSelectionList()

You can also create your own lists using MSelectionList to merge with other lists, including the global list. You can use this list to create sets of objects (see setObject() method).