Visualizzazione dei risultati da 1 a 3 su 3

Discussione: [C++] Uso dei "traits"

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826

    [c++]traits

    ciao .
    Sto utilizzando una libreria xerces xml e fa largo uso di template.
    che cos è un traits?
    ho trovato questa definizione :

    Think of a trait as a small object whose main purpose is to carry information used by another object or algorithm to determine "policy" or "implementation details".
    - Bjarne Stroustrup

    ma non riesco bene a capire.

  2. #2
    L'idea è che in alcuni casi non è possibile scrivere classi che operino su tipi generici senza che ci sia effettivamente un'interfaccia comune; in tal caso, si usano spesso le classi traits, ossia delle classi template che forniscono un'interfaccia per l'uso/la manipolazione del tipo su cui viene costruita la classe "vera". Sono particolarmente utili quando i tipi di base sono tipi builtin, e quindi non espandibili direttamente con metodi/typedef/altro.
    Per un esempio, vedi ad esempio la classe char_traits usata dalle classi template della libreria standard che devono usare delle stringhe con caratteri di tipo generico; in tal caso deve essere definita la relativa implementazione di char_traits altrimenti esse non sanno operare su tali caratteri.
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    4,826
    capito , grazie 1000

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.