Domanda

Io sono un po 'confuso, quindi la domanda è un po' di confusione.TL;dr:come mescolare STL e della programmazione a oggetti?

Dal commento di Migliore introduzione al C++ moderno paradigmi? e http://www.boost.org/community/generic_programming.html non c'è molto su oggetti la programmazione orientata.(boost linee guida menzione oggetto generatori).

Durante i lavori di piallatura un programma, sembra che la STL e gli oggetti si adattano bene insieme.Si pensa a un algoritmo e come fare le cose, poi si pensa a quali sono le cose che si desidera lavorare con e che proprietà/caratteristiche hanno.Esprimere quelle cose in termini di tuple e contenitori per il trasporto di applicare algoritmi di loro.Dalla mia comprensione, che la STL stile di pensiero.

Ora, questo è dove gli oggetti sono disponibili in.Sono cose che permette di fare cose che contengono dati, algoritmi di modificare i dati e interfacce.Ma che si sovrappone con l'idea di stl dove si possono separare i dati e algoritmi.

In OO si combinano i dati e algoritmi in STL si separano.

Anche se matematicamente e genericamente STL più senso (quando è possibile applicare l'algoritmo per nulla), è più facile pensare concettualmente in OO stile quando si hanno un sacco di oggetti diversi e algoritmi -- si ottiene una migliore organizzazione.Per esempio, qt-stile avvocati, utilizzando al minimo e ortogonale interfacce specifiche per una classe come opporsi alla algoritmi generali.Ho detto specifico perché i loro oggetti sono diversi e richiedono interfacce minime ovvero gli oggetti non condividere le stesse interfacce.

Quindi la domanda è:"si può ottenere via con STL in C++ moderno o si dovrebbe utilizzare oggetti?e se è necessario utilizzare gli oggetti allora come?"

Altre domande pertinenti al Overflow dello Stack:

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
scroll top