fork download
  1.  
  2. #include <iterator>
  3. #include <iostream>
  4. #include <vector>
  5. #include <fstream>
  6.  
  7. struct Vector3
  8. {
  9. float x, y, z;
  10. };
  11.  
  12. struct joint_angle
  13. {
  14. int count;
  15. Vector3 orient;
  16. };
  17.  
  18. struct pose
  19. {
  20. float time;
  21. std::vector<joint_angle> angle;
  22. };
  23.  
  24. std::vector<pose> posture;
  25.  
  26. // opérateur pour lire un "joint_angle"
  27. std::istream & operator>> (std::istream & stream, joint_angle & ja)
  28. {
  29. ja.count = 0;
  30. stream >> ja.orient.x >> ja.orient.y >> ja.orient.z;
  31. return stream;
  32. }
  33.  
  34. // opérateur pour lire un "pose"
  35. std::istream & operator>> (std::istream & stream, pose & p)
  36. {
  37. p.time = 0;
  38. std::copy(std::istream_iterator<joint_angle>(stream), std::istream_iterator<joint_angle>(), std::back_inserter(p.angle));
  39. return stream;
  40. }
  41.  
  42. // pour lire un fichier
  43. int main()
  44. {
  45. std::ifstream stream("fichier.txt" );
  46. if (stream)
  47. {
  48. // test operator >> joint_angle
  49. joint_angle ja;
  50. stream >> ja;
  51.  
  52. // test operator >> pose
  53. pose p;
  54. stream >> p;
  55. }
  56. }
  57.  
Success #stdin #stdout 0.02s 2812KB
stdin
Standard input is empty
stdout
Standard output is empty