]> git.llucax.com Git - z.facultad/75.74/practicos.git/blobdiff - practicas/pipi/src/ipaddr.h
Primera aproximación al cache y a la resolución de nombres.
[z.facultad/75.74/practicos.git] / practicas / pipi / src / ipaddr.h
index eed830d4e4f8c246d37bfe7717b68a466168dcbb..b5c9cead49541fc8f090cdcdfa5cbce36b8673e9 100644 (file)
@@ -4,28 +4,35 @@
 #include <string>
 #include <cstdlib>
 #include <stdexcept>
 #include <string>
 #include <cstdlib>
 #include <stdexcept>
+#include <stdint.h>
 
 /// Dirección IP
 struct IPAddr
 {
 
     /// Átomo de dirección IP
 
 /// Dirección IP
 struct IPAddr
 {
 
     /// Átomo de dirección IP
-    typedef unsigned char atom;
+    typedef uint8_t atom;
 
     /// Representación interna
     atom atoms[4];
 
 
     /// Representación interna
     atom atoms[4];
 
+    /// Constructor
+    IPAddr();
+
     /// Constructor
     IPAddr(atom a1, atom a2, atom a3, atom a4);
 
     /// Constructor
     /// Constructor
     IPAddr(atom a1, atom a2, atom a3, atom a4);
 
     /// Constructor
-    IPAddr(unsigned ip);
+    IPAddr(uint32_t ip);
+
+    /// Constructor
+    //IPAddr(const char* ip) throw (std::logic_error);
 
     /// Constructor
 
     /// Constructor
-    IPAddr(std::string ip) throw (std::logic_error);
+    IPAddr(const std::string& ip) throw (std::logic_error);
 
     /// Operador de casteo a unsigned
 
     /// Operador de casteo a unsigned
-    operator unsigned () const;
+    operator uint32_t () const;
 
     /// Operador de casteo a std::string
     operator std::string () const;
 
     /// Operador de casteo a std::string
     operator std::string () const;