std::experimental::any
From cppreference.com
                    
                                        
                    < cpp | experimental
                    
                                                            
                    |   | This library component was voted out from C++14 working paper into a separate Technical Specification. It is not a part of the draft C++14. | 
|   | This is work in progress, there may be inaccuracies. | 
| Defined in header  <experimental/any> | ||
| class any; | (library fundamentals TS) | |
The class any describes a type-safe container for single values of any type.
1) An object of class 
any stores an instance of any type that satisfies the constructor requirements or is empty, and this is referred to as the state of the class any object. The stored instance is called the contained object. Two states are equivalent if they are either both empty or if both are not empty and if the contained objects are equivalent.
2) The non-member 
any_cast functions provide type-safe access to the contained object.
| Contents | 
[edit] Member functions
| constructs an anyobject(public member function) | |
| assigns an anyobject(public member function) | |
| Modifers | |
| destroys contained object (public member function) | |
| swaps two anyobjects(public member function) | |
| Observers | |
| checks if object holds a value (public member function) | |
| returns the typeidof the contained value(public member function) | |
[edit] Non-member functions
| swaps two anyinstances(function) | |
| type-safe access to the contained object (function template) | |