Les déclarations suivantes doivent faire partie de l'espace de noms
  
basics dans le fichier 
exceptions.hpp :
  
struct Duration
{
  int min, sec;
};
int
total_seconds(Duration d);
 
Il s'agit d'une part de définir, dans le fichier 
exceptions.cpp, cette
  fonction 
total_seconds() afin qu'elle renvoie le nombre total de
  secondes de la durée fournie (
60 fois 
min plus 
sec).
Avant d'effectuer ce calcul, elle devra cependant s'assurer du fait que
  le membre 
sec n'est pas négatif ni supérieur à 
59 ; si
  tel est le cas, il faudra lever une exception.
D'autre part, il faut réaliser, dans le fichier 
prog_ex0104.cpp, cette
  fonction :
  
void
test_Duration_total_seconds()
{
  std::cout << "\n~~~~ " << __func__ << "() ~~~~\n";
  try
  {
    // ...test incorrect duration...
  }
  catch(const std::exception &e)
  {
    std::cerr << "!!! Exception: " << e.what() << " !!!\n";
  }
  // ...test correct duration...
}
  qui sera appelée depuis la fonction 
main().
Elle doit être complétée en déclarant à chacun des deux emplacements
  indiqués une variable de type 
Duration initialisée avec deux
  valeurs de votre choix, puis il faudra afficher le résultat de la
  fonction 
total_seconds() appliquée à chacune de ces variables.
Dans le premier cas les valeurs seront choisies de façon à provoquer
  une exception, alors que dans le second cas elles ne le devront pas.