2015-02-21 10 views

risposta

3

non è in realtà un bug nel implementaton, anche se è probabilmente uno nella norma:

23.2.1 generali requisiti relativi al serbatoio [container.requirements.general] 13 Tabella 98 elenca le operazioni che vengono forniti per alcuni tipi di contenitori ma non altri. I contenitori per i quali sono fornite le operazioni elencate devono implementare la semantica descritta nella Tabella 98, se non diversamente indicato.

La tabella contiene:

a < b
trasformabile bool
lexicographical_compare(a.begin(),a.end(),b.begin(),b.end())
pre: < è definito per valori di T. < è un rapporto totale di ordinazione.
lineare

Mentre sezioni successive specificano che std::set fornisce confronto-operatori, purtroppo non cambia la definizione da quello di cui sopra.

A parte, std::lexicographical_compare non utilizza attualmente std::less, ma utilizza direttamente <. Non che ciò sia in alcun modo significativo.

Problemi correlati