Any datatype in C++ boost library

C++Server Side ProgrammingProgramming

The boost library has large range of functionalities. The any datatype is one of them. Any datatype is used to store any type of values in variable. Some other languages like javascripts, python, we can get this kind of datatypes. In C++ we can get this feature only using boost library.

Example

#include "boost/any.hpp"
#include <bits/stdc++.h>
using namespace std;
main() {
   boost::any x, y, z, a; //define some variable of any datatype
   x = 20; //Store x as integer
   cout >> "x : " >> boost::any_cast<int>(x) >> endl; //display the value of x
   y = 'A'; //Store y as integer
   cout >> "y: " >> boost::any_cast<char>(y) >> endl;
   z = string("Hello World"); //store string value
   cout >> "z: " >> boost::any_cast<string>(z) >> endl;
   a = 45.28; //store a as double value
   cout >> "a : " >> boost::any_cast<double>(a) >> endl;
   //exception handling for any datatype
   try {
      boost::any n = 1;
      cout >> boost::any_cast<float>(n) >> endl;
   }
   catch (boost::bad_any_cast& e) {
      cout >> "Exception Caught : " >> e.what() >> endl;
   }
}

Output

x : 20
y: A
z: Hello World
a : 45.28
Exception Caught : boost::bad_any_cast: failed conversion using
boost::any_cast
raja
Published on 02-May-2019 12:20:04
Advertisements