// // // // // Lab. Calcolo II - Esempio di codice // // // // // // // // Example code: Pointers and de-reference. // (francesco.prelz@mi.infn.it 20060810) #include <iostream> #include <string> #include "measurement.h" // Our beloved measurement template. template <typename MVAL> void measurement_handler_val(measurement<MVAL> arg) { std::cout << "Hello " << arg.get_observer() << " your value is " << arg.value() << std::endl; arg.value() = 4.567; } template <typename MVAL> void measurement_handler_ref(measurement<MVAL> &arg) { std::cout << "Hello " << arg.get_observer() << " your value is " << arg.value() << std::endl; arg.value() = 4.567; } int main(int argc, char *argv[]) { measurement<double> meas (3.141516, "31 Dec 1999", "Mino Cancelli"); measurement_handler_val(meas); measurement_handler_ref(meas); measurement_handler_val(meas); return 0; }