#include #include "DObject.h" DObject testFunction(DObject &obj); int main(){ float data = 55.86868; DObject obj; obj.setData(data); float newData; newData = std::get(obj.getData()); std::cout << "Data: " << newData << std::endl; std::cout << "Calling test function" << std::endl; DObject newObj = testFunction(obj); std::cout << newObj << std::endl; return 0; } // Test function which takes a DObject as an argument and // returns new DObject with an vector of 10 elements identical to the input DObject // This should use std::varient and auto to do some degree of type inference DObject testFunction(DObject &obj){ float data = obj.getDataAs(); std::cout << "Data: " << data << std::endl; std::vector> newData(3, std::vector(3, data)); DObject newObj(newData); std::cout << obj << std::endl; return newObj; }