Yes, if you wish to guarantee uniqueness. I think the only really glaring disadvantage is sorting.
A global counter may be fine for you application if you can guarantee thread safety (i.e. they're handed out atomically and nobody else can get the same ID; some kind of ID manager, perhaps) and also that the type doesn't overflow.