Hola Zully,<br><br>
<div class="gmail_quote">2010/4/26 Lapizlazuli Castillo Quiroz <span dir="ltr"><<a href="mailto:zhully777@hotmail.com">zhully777@hotmail.com</a>></span><br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div>holas <br> <br>nose cual es el problema por que el programa no complila me tira errores , por favor quisiera saber si pueden encotrar la falla <font color="#ff0000">scout was not declared in this scope </font><font color="#000000">y tambien </font><font color="#ff0000">argument of type ' int (Archivito ::) ()' does not mach 'int' </font><br>
</div></blockquote>
<div> </div>
<div>Los comentariosm en inglés, suelen ser explicativos, aunque a veces breves. Veamos el código fuente.</div>
<div> </div>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div>#include <iostream><br>#include <string><br>using namespace std;<br>class Archivito{<br> private :<br> string nombre;<br> int cantElementos;<br> public :<br> Archivito ();<br></div></blockquote>
<div> </div>
<div>Al menos que tengas definido este constructor en algún otro archivo, ésta declaración debería ser también una definición. Esto es,</div>
<div> </div>
<div>Archivito() {}</div>
<div> </div>
<div>Claro que sería mucho mejor si inicializas los datos miembro de esta clase, que para esto sirve el constructor. Por ejemplo,</div>
<div> </div>
<div>Archivito() : nombre(""), cantElementos(0) {}</div>
<div> </div>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div> void setnombre (string nombres){<br></div></blockquote>
<div> </div>
<div>Aconsejo pasar este argumento por referencia. Esto es,</div>
<div> </div>
<div>void setnombre( const string &nombres )</div>
<div> </div>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div> nombre = nombres;}<br><br> void setcantElementos ( int elements){<br> cantElementos = elements;}<br><br> string getnombre (){<br> return nombre;}<br> int getcantElementos (){<br> return cantElementos;}<br>
</div></blockquote>
<div> </div>
<div>Las funciones de tipo 'get' suelen ser constantes. Esto es,</div>
<div> </div>
<div>string getnombre() const;</div>
<div>
<div>string getcantElementos() const;</div>
<div> </div>
<div>ya que no tenemos intención alguna de modificar el estado de este objeto; es decir, los datos pertenecientes a este objeto.</div>
<div> </div></div>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div>};<br> <br>int main()<br>{<br> Archivito arch ;<br> arch.setnombre ("zully");<br> arch.setcantElementos (10);<br> string unNombre;<br> unNombre = arch.getnombre;<br></div></blockquote>
<div> </div>
<div>Esto es incorrecto, y el compilador te marca un error por ello. 'getnombre()' es una función y por tanto, se invoca de igual manera que cualquier función en C/C++. Te faltan los paréntesis para indicar la lista de parámetros que vas a pasar, que puede estar vacía. Esto es,</div>
<div> </div>
<div>unNombre = arch.getnombre();<br></div>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div> int cant = arch.getcantElementos;<br></div></blockquote>
<div> </div>
<div>Nuevamente, invoca la función miembro correctamente; esto es,</div>
<div> </div>
<div>int cant = arch.getcantElementos();</div>
<div> </div>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div> scout << " Resultados del Directorio/s es/son :"<<endl;<br></div></blockquote>
<div> </div>
<div>Éste es el otro error que te marca el compilador. 'scout' no existe. Seguramente querías escribir 'cout'; o sea,</div>
<div> </div>
<div>cout << " Resultados del Directorio/s es/son :"<<endl;<br></div>
<div> </div>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div> cout << "\n\n";<br> cout << " NONBRE CANTIDAD de Sub-ELEMENTOS " << endl;<br> cout << "\n\n";<br> cout << unNombre << " " << cant;<br>
cout << "\n\n";<br> <br> return 0;<br>}<br><br> </div></blockquote>
<div> </div>
<div>Espero que esto aclare las dudas.</div>
<div> </div>
<div>Steven</div>
<div> </div></div>