<div dir="ltr">gracias con eso resolví  y aclaré la duda, ya había intentado ponerle const a la función pero no supe donde lo había hecho así<div>const( const char *getcadena())</div><div>y luego </div><div>const char * const getcadena</div><div>nunca pensé ponerlo al final</div><div><br></div><div><br></div><div>... ahora sólo espero recordarlo para el futuro.</div></div><div class="gmail_extra"><br><div class="gmail_quote">El 10 de julio de 2016, 21:24, Davidson, Steven <span dir="ltr"><<a href="mailto:srd4121@njit.edu" target="_blank">srd4121@njit.edu</a>></span> escribió:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hola Yolmer,<div class="gmail_extra"><br></div><div class="gmail_extra">El error está en el uso del parámetro. Según el mensaje dado, estás usando una función miembro que no es constante para un objeto que definiste que sí es constante. Por ejemplo, escribiste algo así,</div><div class="gmail_extra"><br></div><div class="gmail_extra">class UnaClase<br>{</div><div class="gmail_extra">private:<br>  char szCadena[100];</div><div class="gmail_extra"><br></div><div class="gmail_extra">public:</div><div class="gmail_extra">  const char * Getcadena();<br>  ...<br>};</div><div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_extra">UnaClase::UnaClase( const UnaClase &ref )</div><div class="gmail_extra">{<br>  const char *psz = ref.Getcadena();  // Error: 'UnaClase::Getcadena()' no es constante</div><div class="gmail_extra">}<br></div><div><br></div><div>Debes usar solamente funciones (miembro) constantes con objetos constantes. Por ejemplo,</div><div><br></div></div><div class="gmail_extra"><div class="gmail_extra">class UnaClase<br>{</div><div class="gmail_extra">private:<br>  char szCadena[100];</div><div class="gmail_extra"><br></div><div class="gmail_extra">public:</div><div class="gmail_extra">  // Esta función es segura para ser llamada con objetos constantes</div><div class="gmail_extra">  const char * Getcadena() const;<br>  ...<br>};</div><div class="gmail_extra"><br></div><div class="gmail_extra"><div class="gmail_extra">UnaClase::UnaClase( const UnaClase &ref )</div><div class="gmail_extra">{</div><div class="gmail_extra">  // Correcto: objeto constante invoca función constante<br>  const char *psz = ref.Getcadena();</div><div class="gmail_extra">}<br></div><div><br></div><div>También ten presente que al adentrarte en el ámbito de la clase, 'UnaClase', el parámetro, 'ref', tiene acceso directo a sus miembros. Por ejemplo,</div><div><br></div><div><div>UnaClase::UnaClase( const UnaClase &ref )</div><div>{</div><div>  // Acceso directo a sus miembros correspondientes</div><div>  strcpy( szCadena, ref.szCadena );</div><div>}</div></div><div><br></div></div></div><div class="gmail_extra"><br>Espero que esto aclare las dudas.</div><span class="HOEnZb"><font color="#888888"><div class="gmail_extra"><br></div><div class="gmail_extra">Steven</div></font></span><div><div class="h5"><div class="gmail_extra"><br></div><div class="gmail_extra"><br><div class="gmail_quote">2016-07-10 18:57 GMT-04:00 Yolmer Rosales <span dir="ltr"><<a href="mailto:yolmer.rosales@gmail.com" target="_blank">yolmer.rosales@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hola lista me he topado con algo un poco extraño<div><br></div><div>según la teoría un constructor copia como el que quiero hacer debe pasarse una referencia constante algo así</div><div><br></div><div>UnaClase::UnaClase(const UnaClase&)</div><div>{</div><div>      Código del constructor;</div><div>}</div><div><br></div><div><br></div><div>pero este constructor sólo me funcionó bien quitando el "const"</div><div><br></div><div>de resto da el siguiente error</div><div><br></div><div>error: passing 'const A' as 'this' argument of 'const char* A::Getcadena()' discards qualifiers [-fpermissive]|</div></div></blockquote><div><br></div></div></div></div></div></div>
<br>_______________________________________________<br>
Lista de correo Cconclase <a href="mailto:Cconclase@listas.conclase.net">Cconclase@listas.conclase.net</a><br>
<a href="http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net" rel="noreferrer" target="_blank">http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net</a><br>
Bajas: <a href="http://listas.conclase.net/index.php?gid=2&mnu=FAQ" rel="noreferrer" target="_blank">http://listas.conclase.net/index.php?gid=2&mnu=FAQ</a><br></blockquote></div><br></div>