010
31.03.2008, 21:06 Uhr
xXx
Devil
|
So mal das ganze vereinfachen
C++: |
#ifndef ROUTE_HPP__INCLUDED #define ROUTE_HPP__INCLUDED
#if (_MSC_VER >= 1300) #pragma once #endif // (_MSC_VER >= 1300)
#include <string> // std::string #include <utility> // std::pair<...,...>
class Route { typedef unsigned int length_t; // typ für die länge der strecke typedef unsigned int identification_t; // typ für die id des punktes typedef std::pair<std::string, identification_t> point_t; // typ für einen punkt der strecke (name + id)
point_t m_start; // startpunkt der route point_t m_end; // endpunkt der route length_t m_length; // länge der route public: point_t const& get_start() const { return m_start; } // atartpunkt der route zurückgeben point_t const& get_end() const { return m_end; } // endpunkt der route zurückgeben
public: Route(point_t const& start, point_t const& end, const length_t length) : m_start(start), m_end(end), m_length(length) {}
public: friend std::ostream& operator<<(std::ostream& out, Route const& data) // ausgabe der daten => Route von "xyz" nach "xyz" (Länge x) { return out << "Route von \"" << data.m_start.first << "\" nach \"" << data.m_end.first << "\" (Länge: " << data.m_length << ")"; }
friend std::istream& operator>>(std::istream& in, Route& data) // eingabe der daten { /* einlesen der eingaben */ } };
#endif // ROUTE_HPP__INCLUDED
|
... damit haben wir ne saubere Basis. Darauf kann man aufbauen. |