std:: messages_byname
| 
           
           Defined in header
            
         
            
             <locale>
            
           
           | 
         ||
| 
           
           
            
             template
            
            
             <
            
            
             class
            
            CharT
            
             >
            
             
         class messages_byname : public std:: messages < CharT > ;  | 
         ||
       
        std::messages_byname
       
       is a
       
        
         std::messages
        
       
       facet which encapsulates retrieval of strings from message catalogs of the locale specified at its construction.
      
Specializations
The standard library is guaranteed to provide the following specializations:
| 
          
          Defined in header
           
        
           
            <locale>
           
          
          | 
       |
| std :: messages_byname < char > | narrow/multibyte message catalog access | 
| std :: messages_byname < wchar_t > | wide string message catalog access | 
Nested types
| Type | Definition | 
         
          catalog
         
         | 
        std:: messages_base < CharT > :: catalog | 
         
          string_type
         
         | 
        std:: basic_string < CharT > | 
Member functions
| 
          
           
            
             
              (constructor)
             
            
           
           
          | 
        
         constructs a new
         
          messages_byname
         
         facet
         (public member function)  | 
       
| 
          
           
            
             
              (destructor)
             
            
           
           
          | 
        
         destroys a
         
          messages_byname
         
         facet
         (protected member function)  | 
       
std::messages_byname:: messages_byname
| 
            
            
             
              explicit
             
             messages_byname
             
              (
             
             
              const
             
             
              char
             
             
              *
             
             name,
             
              
               std::
               
                size_t
               
              
             
             refs
             
              =
             
             
              0
             
             
              )
             
             
              ;
             
            
            
           | 
          ||
| 
            
            
             
              explicit
             
             messages_byname
             
              (
             
             
              const
             
             
              
               std::
               
                string
               
              
             
             
              &
             
             name,
             
              
               std::
               
                size_t
               
              
             
             refs
             
              =
             
             
              0
             
             
              )
             
             
              ;
             
            
            
           | 
          (since C++11) | |
        Constructs a new
        
         std::messages_byname
        
        facet for a locale with
        
         
          name
         
        
        .
       
refs is used for resource management: if refs == 0 , the implementation destroys the facet, when the last std::locale object holding it is destroyed. Otherwise, the object is not destroyed.
Parameters
| name | - | the name of the locale | 
| refs | - | the number of references that link to the facet | 
std::messages_byname:: ~messages_byname
| 
            
            
             
              protected
             
             
              :
             
              
          ~messages_byname ( ) ;  | 
          ||
Destroys the facet.
Inherited from std:: messages
Nested types
| Type | Definition | 
          
           char_type
          
          | 
         
          
           CharT
          
          | 
        
          
           string_type
          
          | 
         std:: basic_string < CharT > | 
Data members
| Member | Description | 
          
           
            
             std::locale::id
            
           
          
          
           id
          
          
           [static]
          
          | 
         the identifier of the facet | 
Member functions
          invokes
          
           do_open
          
          (public member function of 
            std::messages<CharT>
           
           )
          
          | 
        |
          invokes
          
           do_get
          
          (public member function of 
            std::messages<CharT>
           
           )
          
          | 
        |
          invokes
          
           do_close
          
          (public member function of 
            std::messages<CharT>
           
           )
          
          | 
        
Protected member functions
| 
           
            
             
              
               [virtual]
              
             
            
            
           | 
         
          opens a named message catalog
           (virtual protected member function of 
            std::messages<CharT>
           
           )
          
          | 
        
| 
           
            
             
              
               [virtual]
              
             
            
            
           | 
         
          retrieves a message from an open message catalog
           (virtual protected member function of 
            std::messages<CharT>
           
           )
          
          | 
        
| 
           
            
             
              
               [virtual]
              
             
            
            
           | 
         
          closes a message catalog
           (virtual protected member function of 
            std::messages<CharT>
           
           )
          
          | 
        
Inherited from std:: messages_base
Nested types
| Type | Definition | 
          
           catalog
          
          | 
         an unspecified signed integer type | 
Example
#include <iostream> #include <locale> void try_with(const std::locale& loc) { const std::messages<char>& facet = std::use_facet<std::messages<char>>(loc); std::messages<char>::catalog cat = facet.open("sed", std::cout.getloc()); if (cat < 0) std::cout << "Could not open \"sed\" message catalog\n"; else std::cout << "\"No match\" " << facet.get(cat, 0, 0, "No match") << '\n' << "\"Memory exhausted\" " << facet.get(cat, 0, 0, "Memory exhausted") << '\n'; facet.close(cat); } int main() { std::locale loc("en_US.utf8"); std::cout.imbue(loc); try_with(std::locale(loc, new std::messages_byname<char>("de_DE.utf8"))); try_with(std::locale(loc, new std::messages_byname<char>("fr_FR.utf8"))); try_with(std::locale(loc, new std::messages_byname<char>("ja_JP.utf8"))); }
Possible output:
"No match" Keine Übereinstimmung "Memory exhausted" Speicher erschöpft "No match" Pas de concordance "Memory exhausted" Mémoire épuisée "No match" 照合しません "Memory exhausted" メモリーが足りません
See also
| 
         implements retrieval of strings from message catalogs
          (class template)  |