22 #include "boost/smart_ptr.hpp" 
   27     void crossover(boost::shared_ptr<T> ind1, boost::shared_ptr<T> ind2,
 
   32         for(std::size_t i = 0; i < ind1->genes_m.size(); i++) {
 
   33             int choose = (int) (2.0 * (
double) rand() / (RAND_MAX + 1.0));
 
   35                 ind2->genes_m[i] = ind1->genes_m[i];
 
   36                 ind1->genes_m[i] = genes_ind2[i];
 
boost::shared_ptr< CmdArguments > CmdArguments_t
std::vector< double > genes_t
representation of genes
void crossover(boost::shared_ptr< T > ind1, boost::shared_ptr< T > ind2, CmdArguments_t)