Newsgroup: it.comp.lang.c++
Titolo: STL: a cosa servono le funzioni oggetto?

Mi sto avventurando nello studio della STL, sono appena agli inizi ma ho già
molti dubbi, il primo dei quali è questo:
Ho letto che gli algoritmi generici si servono di particolari funzioni
oggetto di classi appositamente definite che consentono di avere
un'efficienza maggiore se non è corretto correggetemi...
Ma mi spiegate in pratica a cosa servono queste oscure(per me) funzioni
oggetto?
Consigliatemi anche qualsiasi sito(purchè in Italiano) che mi possa essere
d'aiuto per tutto cio che è legato alla STL: Classi
contenitore(list,vector,deque,set,multiset,map,ecc..), classi
iteratore,algoritmi generici e tutto ciò che fa parte della STL.
Insomma da dove posso iniziare a cercare qualcosa in rete?
Grazie!

 oggetto?
Sono classi che definiscono l'operatore funzionale:
Esempio:
class Foo{
    Foo();
    bool operator()(......) { return true; }
    ...
    ...
};
int main (int argc,char *argv[])
{
    bool value = false;
    Foo obj();
    value = obj(.....);
    return 0;
}
Cosi' facendo si e' dato all' oggetto foo, la semantica di chiamata a funzione;
La  maggiore efficienza e' data dal fatto che e' piu facile rendere inline una
chiamata a funzione che prenda come argomento un si fatto oggetto anziche' un
puntatore a funzione.
Un buon punto di partenza puo essere:
http://www.sgi.com/tech/stl/table_of_contents.html
--
Ivan Molella
__LINUX__ the choice of the  __GNU__ generation


un libro va bene lo stesso?
Herbert Schildt: C++ - ed. McGraw-Hill alcuni dicono che č fatto male, ma a
me non sembra peggiore di tanta altra roba ben piů blasonata.
buon divertimento

me non sembra peggiore di tanta altra roba ben più blasonata.
Lo e' purtroppo.
Non acquistate questo libro.
-- 
Andrea Laforgia - walkietalkie(at)
libero.it
"Meglio cieco che negro" (Stevie Wonder)

 ha scritto nel messaggio
news:wpl08.21782$cU4.7...@twister1.libero.it...

mah... io non l'ho mai letto, questo libro.
Ma perche' consigliare un libro di cui alcuni (alcuni???) dicono
che e' fatto male invece che uno di cui TUTTI dicono che e' fatto bene?
Ad esempio:
Lippman - Lajoie, "C++ Corso di programmazione" Terza edizione
Ed. Addison-Wesley (45.96 Euro la copia che ho in mano io)
Oppure, un po' piu' pesante, ma probabilmente ancora pu' completo:
Bjarne Stroustrup, "C++, Linguaggio, libreria standard, principi di
programmazione", Terza edizione.
Ed. Addison-Wesley (45.96 Euro la mia copia)
Per il resto vedi le FAQ su 
http://cpp.programmazione.it
Ciao
--
Gerolamo

 Cosi' facendo si e' dato all' oggetto foo, la semantica di chiamata a funzione;
Come nota, se si definisce un oggetto funzionale sarebbe opportuno
falro ereditare pubblicamente da std::unary_function o da
std::binary_function; in questo modo sono automaticamente definiti,
per l'oggetto funzionale, tutti i typedef che permettono di usarlo
assieme a bind1st, bind2nd e simili.
-- 
Maurizio Loreti  - Linux Is Not UniX -  
http://www.pd.infn.it/~loreti/mlo.html
Univ. of Padova, Dept. of Physics - Padova, Italy            
lor...@pd.infn.it

 Non acquistate questo libro.
Concordo con Andrea.  Schildt scrive MOLTO bene: ti da` l'impressione
di farti capire le cose, e` chiaro, si legge volentieri.  Senza dubbio
e` per questo che e` cosi` popolare.  Purtroppo, le informazioni che
impartisce tendono a essere un misto di "giusto", "quasi giusto", e
"sottilmente sbagliato".  Non credo che sia per cattiveria: piuttosto,
Socraticamente, "non sa di non sapere", cioe`, quando non e` pienamente
padrone di una materia (e il C++ e` cosi` astruso che al 100% non ne
e` padrone neanche Stroustrup...:-), non se ne rende conto e scrive
comunque "le cose come le ha capite lui".
Se mai dovesse associarsi a qualcuno che _veramente_ ci capisce, e
si lasciasse guidare sui contenuti tenendo le redini della forma
espositiva, potrebbe risultarne un grande libro.  Ma visto che i suoi
libri vendono bene, magari perche` raccomandati da lettori come il
nostro Arancia Meccanica, che motivazione averebbe mai per farlo?
Alex

nostro Arancia Meccanica, che motivazione averebbe mai per farlo?
Se non sbaglio per l'ultimo suo libro la casa editrice gli ha
forzatamente affiancato degli altri scrittori per correggere gli
errori.
Comunque io mi continuo a domandare perché uno come lui faccia parte
del comitato di standardizzazione.
-- 
Marco Barisione (ICQ 84277092)

 del comitato di standardizzazione.
L'appartenenza e` volontaria, non retribuita e non "filtrata".  Piu`
che altro una questione di poterselo permettere, tutto quel lavoro
non retribuito.  (Io ho fatto brevemente parte del comitato di
standardizzazione del pascal esteso quando lavoravo in IBM Research,
non perche` fossi chissa` che mago del Pascal, ma solo perche` a
un certo punto mamma IBM era disposta a pagarmi per farlo... non
appena quest'ultimo requisito e` venuto meno, ho mollato...).
Alex

standardizzazione del pascal esteso [...]
Bhé complimenti allora sei ancora più importante di quanto pensassi
:-)


 Bhé complimenti allora sei ancora più importante di quanto pensassi
Il punto e` il contrario: che per sedere in un comitato NON occorre essere
importante ne` eminente, solo potersi permettere tanto tempo non
fatturabile (e grosse spese di viaggio, credo ancor oggi) O (piu` spesso)
avere la fortuna di un'azienda che ti copre perche` vuole almeno una
persona per tenere d'occhio e/o spingere nelle sue direzioni preferite il
comitato stesso.
Il comitato di standardizzazione C++ aveva tante persone MOLTO ma
MOLTO valide... ma anche un tot che, pare di capire, altro non hanno
fatto che rompere i *...* dal primo giorno all'ultimo (non so se a proprie
spese, o a spese di chi).
Per questo, forse, si dice che "un cammello e` un cavallo progettato
da un comitato".  Se non capita (piu` o meno per fortuna) una grossa
dose di "persone molto ma molto valide", le altre possono causare
notevoli deterioramenti della qualita` dello standard prodotto.
Alex

 L'appartenenza e` volontaria, non retribuita e non "filtrata".
Quello che va verificato è se è vero che è membro del comitato.
Sui libri si dice che è così. Ma qualcuno, in passato, ha detto che
alcuni membri del comitato sostengono di non averlo mai visto. Non ne
sono certo ma credo che le due cose siano in conflitto. Per quanto ne so
un membro non può assentarsi per più di due volte senza essere escluso
dal comitato stesso. Salvo che non so se in questi termini con membro si
intenda la persona o la società. Ovvero, se IBM, per esempio, è membro
con 3 rappresentanti, questi sono identificati nominativamente o possono
cambiare ad libidum (di IBM)?
Boh!
--
Andrea Ferro
---------
Brainbench C++ Master. Scored higher than 97% of previous takers
Scores: Overall 4.46, Conceptual 5.0, Problem-Solving 5.0
More info 
http://www.brainbench.com/transcript.jsp?pid=2522556

 fatturabile (e grosse spese di viaggio, credo ancor oggi)
Approposito: di che ordini di grandezza parliamo? Lasciando stare i
tempi e i costi del lavoro "extra meeting" che in genere è più facile da
gestire (soprattutto nel senso che molti lavori ti lasciano
intrinsecamente dei buchi sufficienti per per gestirlo), che ordini di
costo ha partecipare ad un meeting e quanto dura un meeting?


 cambiare ad libidum (di IBM)?
Senza contare che e' possibile partecipare al comitato da "osservatore",
ovvero senza contribuire minimamente. Un po' come dire che si e'
partecipato alle Olimpiadi perche' si e' andati a vedere le gare...
Ciao,
Nicola

 costo ha partecipare ad un meeting e quanto dura un meeting?
Per un membro individuale le spese si limitano a viaggio, vitto e
alloggio, perche' gli incontri sono organizzati e ospitati da membri
corporate (vedi ad esempio
http://wwwold.dkuug.dk/JTC1/SC22/WG21/docs/papers/2000/n1278.html
 ). Gli
incontri durano in genere una settimana.
Ciao,
Nicola

 
http://wwwold.dkuug.dk/JTC1/SC22/WG21/docs/papers/2000/n1278.html
 ). 
"Limitano" e' un eufemismo, considerando l'albergo da loro consigliato:
"Rate is $169.00 + Tax a night".
;)
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ;)
Si certo. Ma il ragionamento che fanno è quello del "businessman". Mica
sei in ferie. Confort e accomodation devono essere tali da permetterti
di rendere il massimo.
Hai mai paragonato la differenza fra un biglietto Milano-NewYork in
classe Y (economy) con quello della business class?
Chi deve risparmiare va in economy. Chi si vuole concedere dei lussi va
in prima. Chi ha bisogno che il viaggio abbia il minimo impatto
possibile viaggia in business (che è parecchio oltre la prima classe).
Chi viaggia in business non ha certo problemi per un albergo da 170$.
Anzi: sono abbastanza pochi. So di situazioni in cui il pernottamento di
un "businessman" è previsto costare 500-700$ a notte.
--
Andrea Ferro
IHHC - Member of HT-Group    DVD Authoring operator    Fan of I.Asimov
Brainbench C++ Master:
http://www.brainbench.com/transcript.jsp?pid=2522556
This post express personal opinions which may or may not be the opinons
of the
company(s) I work for. I speak for myself and for myself only.