STL - operazioni insiemistiche

Dal quinto capitolo di Designing Components with the C++ STL, di Ulrich Breymann. Algoritmi standard.

Sezione dedicata operazioni insiemistiche su strutture ordinate.

5.6: Condizioni e limitazioni

Gli algoritmi di questa sezione hanno il limite che l'iteratore di output deve fare riferimento a un container che ha abbastanza spazio allocato per ricevere il risultato. In alternativa é possibile usare un iteratore di inserimento, ma in questo caso il container deve essere vuoto.

Nel primo caso, il rischio é che il container in output non sia dimensionato correttamente, e dunque occorre non considerare gli elementi in coda al container stesso, o addirittura, nel caso lo spazio sia insufficiente, si avrà un crash.

Usando un iteratore di inserimento il rischio é quello di operare su un container non vuoto, che avrà quindi elementi spuri al termine dell'operazione.

Nessun commento:

Posta un commento