25 Apr
                
                    2014
                
            
            
                25 Apr
                
                '14
                
            
            
            
        
    
                5:34 p.m.
            
        On 25 April 2014 09:48, Andrzej Krzemienski <akrzemi1@gmail.com> wrote:
There are two ways for protecting against it: 1. enable_if -- to disable the unwanted overloads 2. Add additional constructor overloads.
3. Pass by value 4. Use a tag for the first parameter in the constructor (There are probably more...) (1) appears cleaner, but some compilers might not support SFINAE.
AFAIK, the set of compilers that support C++11 but do not support SFINAE is empty. -- Nevin ":-)" Liber <mailto:nevin@eviloverlord.com> (847) 691-1404