Normas del foro
Bienvenido(a),
Visitante
. Favor de
ingresar
o
registrarse
.
¿Perdiste tu
email de activación?
- Diciembre 05, 2008, 05:10:12
Visita:
Articulos
-
Juegos Gratis
-
Da Foros
Comunidad Underground Hispana
|
Programacion
|
Programación
|
Carbide C/C#/C++
(Moderador:
Fashion
) | Tema:
-resuelto; no matching function, DeckOfCards
0 Usuarios y 1 Visitante están viendo este tema.
« anterior
próximo »
Páginas:
[
1
]
Autor
Tema: -resuelto; no matching function, DeckOfCards (Leído 336 veces)
lann
Habitual
Desconectado
Mensajes: 322
maamamma
-resuelto; no matching function, DeckOfCards
«
en:
Agosto 06, 2007, 03:19:35 »
aqui esta el codigo
Necesitas ser usuario para ver los enlaces
Crear Usuario
Hacer Sesion
el error esta en la linea 167, segun yo esta bien usada la funcion.
el prototipo es
void selectionSort( int [], const int, bool (*)( int, int ) );
y yo la uso asi
selectionSort( temp_face, 13, ascending );
temp_face es un array de ints, ascending es el apuntador ala funcion ascending
pero me sale este error
DeckOfCards.cpp:170: error: no matching function for call to `DeckOfCards::selectionSort(int[13], const int&, <unknown type>)'
DeckOfCards.cpp:31: note: candidates are: void DeckOfCards::selectionSort(int*, int, bool (*)(int, int))
segun yo esta bien usada, pero no se por que creo que es un error muy obvio y estupido
espero que no sea tan estupido como para avergonzarme... =P
estos errores son los que digo... "deberia funcionar" y me atasco
«
Última modificación: Marzo 30, 2008, 03:02:05 por lann
»
En línea
am
DarkIker
Habitual
Desconectado
Mensajes: 272
Colombia Underground Team
Re: no matching function, DeckOfCards
«
Respuesta #1 en:
Agosto 09, 2007, 10:46:37 »
Fijate que el primer argumento es un puntero a int entonces debes de pasarle una variable int referenciada.
selectionSort( &temp_face, 13, ascending );
ya por otra parte comprueba el prototipo de la funcion "ascending" que le pasas.
Att:
DarkIker
En línea
Necesitas ser usuario para ver los enlaces
Crear Usuario
Hacer Sesion
--> Colombia Underground Team
Necesitas ser usuario para ver los enlaces
Crear Usuario
Hacer Sesion
--> My Blog
codelogman
Visitante
Re: no matching function, DeckOfCards
«
Respuesta #2 en:
Agosto 09, 2007, 11:53:31 »
NONONONO Señor, por que te complicas usando prototipos que NO entendes!!!
por que no lo haces tu mismo?
es sencillo, mira:
void selectionSort(int a[], int size)
{
int i, j, min;
for (i = 0; i < size - 1; i++)
{
min = i;
for (j = i+1; j < size; j++)
{
if (a[j] < a[min])
{
min = j;
}
}
swap(a
, a[min]);
}
}
sacado de wikipedia ....
swap (variable1, variable2)
intercambia los valores de las vars... que muy facilmente lo puedes hacer a mano tambien (nada te cuesta)
Saludos Frodo (Iker)
«
Última modificación: Agosto 10, 2007, 04:35:50 por codelogman
»
En línea
DarkIker
Habitual
Desconectado
Mensajes: 272
Colombia Underground Team
Re: no matching function, DeckOfCards
«
Respuesta #3 en:
Agosto 10, 2007, 10:37:54 »
Señoras y señores esto es lo que pasa cuando vivimos con MFC xDD, resultase mi querido gollum( Codelogman ) que hay algunos controles que requieren el "sort" de los mismos mediante una funcion que lo que hace es retornar un valor tal como lo hace strcmp, 0 si son iguales, -1 si el segundo arg es mayor que el primero y 1 en caso contrario; como la funcion la hacemos nosotros entonces podemos definir en base a que propiedades organizarlos, te acordas de NeoMsn y su organizacion de contactos?¿: aca pongo la funcion sort de este:
Código:
int CALLBACK CompareFunc( LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)
{
struct Contac *Infor[ 2 ];
if ( (Infor[ 0 ] = ChildList( NULL, ( HTREEITEM )lParam1)) ) {
if ( (Infor[ 1 ] = ChildList( NULL, ( HTREEITEM )lParam2) ) ) {
int Ret1 = strncmp( Infor[ 0 ]->Estad, "NLN", 3);
int Ret2 = strncmp( Infor[ 1 ]->Estad, "NLN", 3);
if (!Ret1 && !Ret2)
return 0;
else if(!Ret1 && Ret2)
return -1;
else if(Ret1 && !Ret2)
return 1;
else {
Ret1 = strlen( Infor[ 0 ]->Estad);
Ret2 = strlen( Infor[ 1 ]->Estad);
if(Ret1 == Ret2)
return 0;
else if(Ret1 > Ret2)
return -1;
else if(Ret1 < Ret2)
return 1;
}
}
}
return 0;
}
Ahora si te quedo claro¿¿?, o lo intentamos con plastilina xDD, por cierto recuerda que estas perdiendo optimizacion en los for es mas rapido"++j" que "j++"
. Salu2.
Att:
DarkIker
En línea
Necesitas ser usuario para ver los enlaces
Crear Usuario
Hacer Sesion
--> Colombia Underground Team
Necesitas ser usuario para ver los enlaces
Crear Usuario
Hacer Sesion
--> My Blog
codelogman
Visitante
Re: no matching function, DeckOfCards
«
Respuesta #4 en:
Agosto 10, 2007, 12:54:28 »
Cita de: DarkIker en Agosto 10, 2007, 10:37:54
Señoras y señores esto es lo que pasa cuando vivimos con MFC xDD, resultase mi querido gollum( Codelogman ) que hay algunos controles que requieren el "sort"
a ver enseñame en el code DONDE uso el sort que dices que requieren los controles de no se que que NO uso???
la funcion es 0 MFC!!
ademas en el code DONDE? uso MFC...
Mi estimado frodo, esta vez te haz confundido
«
Última modificación: Agosto 10, 2007, 12:56:43 por codelogman
»
En línea
DarkIker
Habitual
Desconectado
Mensajes: 272
Colombia Underground Team
Re: no matching function, DeckOfCards
«
Respuesta #5 en:
Agosto 10, 2007, 04:21:58 »
Yo nunca dije que estuvieramos usando MFC, solo que estabas aconstumbrado a el, por otra parte el sort es para "organizar" los items en base a 2 numeros que se le pasan, asi podriamos organizarlas de menor a mayor o viceversa, tu funcion esta fuera de lugar, no aporta nada al tema y por ende te cabreo xD. si tienes tele hay te vez.
Att:
DarkIker
En línea
Necesitas ser usuario para ver los enlaces
Crear Usuario
Hacer Sesion
--> Colombia Underground Team
Necesitas ser usuario para ver los enlaces
Crear Usuario
Hacer Sesion
--> My Blog
lann
Habitual
Desconectado
Mensajes: 322
maamamma
Re: no matching function, DeckOfCards
«
Respuesta #6 en:
Agosto 10, 2007, 07:47:29 »
Cita de: DarkIker en Agosto 09, 2007, 10:46:37
Fijate que el primer argumento es un puntero a int entonces debes de pasarle una variable int referenciada.
selectionSort( &temp_face, 13, ascending );
ya por otra parte comprueba el prototipo de la funcion "ascending" que le pasas.
Att:
DarkIker
pero temp_face es un apuntador a int...
checate esta funcion donde implementan la funcion que yo uso selectionSort, e igual pasan el nombre del array...
Necesitas ser usuario para ver los enlaces
Crear Usuario
Hacer Sesion
pero igual pense que en alguna dimension semiparalela donde las personas se ponen los zapatos en las manos y los calcetines los usan como metodos anticonceptivos prove como decias, y no funciono.
el prototipo que le paso es
bool ascending( int, int );
selectionSort:
void selectionSort( int [], const int, bool (*)( int, int ) );
en el post de rafb hay viene todo
Necesitas ser usuario para ver los enlaces
Crear Usuario
Hacer Sesion
creo que el problema es cuando paso ascending a selectionSort ya uqe sale
DeckOfCards.cpp:170: error: no matching function for call to `DeckOfCards::selectionSort(int[13], const int&, <UNKNOWN TYPE>)'
DeckOfCards.cpp:31: note: candidates are: void DeckOfCards::selectionSort(int*, int, bool (*)(int, int))
En línea
am
DarkIker
Habitual
Desconectado
Mensajes: 272
Colombia Underground Team
Re: no matching function, DeckOfCards
«
Respuesta #7 en:
Agosto 10, 2007, 07:53:41 »
sorry me guie por el prototipo que arroja el compilador donde se muestra un apuntador a int que en si es igual que el array, pero el echo recae en esto "DeckOfCards::selectionSort(int[13], const int&, <UNKNOWN TYPE>)" esto de tipo desconocido la verdad no me cuadra por ningun lado, solo lo habia visto en objetos com y creeme que no creo que aplique para tu caso. Revisa la definicion de este en el fichero de caebcera que define la clase, hay debe de mostrarse tal cual el prototipo del metodo.
Att:
DarkIker
En línea
Necesitas ser usuario para ver los enlaces
Crear Usuario
Hacer Sesion
--> Colombia Underground Team
Necesitas ser usuario para ver los enlaces
Crear Usuario
Hacer Sesion
--> My Blog
FreakMind
Habitual
Desconectado
Mensajes: 194
Re: no matching function, DeckOfCards
«
Respuesta #8 en:
Agosto 10, 2007, 07:57:43 »
Buenas
Trata agregando lo siguiente (aunque realmente no creo que funcione jeje)
typedef enum{false, true} bool;
Salu2, FreakMind
En línea
Connoisseurs of C semantics find C++ inferior to ++C
lann
Habitual
Desconectado
Mensajes: 322
maamamma
Re: no matching function, DeckOfCards
«
Respuesta #9 en:
Agosto 11, 2007, 06:14:25 »
Cita de: FreakMind en Agosto 10, 2007, 07:57:43
Buenas
Trata agregando lo siguiente (aunque realmente no creo que funcione jeje)
typedef enum{false, true} bool;
Salu2, FreakMind
o.0...
bool es una palabra reservada de c++ de hecho un tipo de datos...
la verdad no se cual sea el error, pero creo pues nimodo definire de una manera diferente selectionSort.
En línea
am
FreakMind
Habitual
Desconectado
Mensajes: 194
Re: no matching function, DeckOfCards
«
Respuesta #10 en:
Agosto 11, 2007, 11:07:40 »
Buenas
Se que es una palabra reservada, pero con tu codigo de prime me tiro un error tambien, entonces le agrege ese enum y me funciono. Fue solo una sugerencia
Salu2, FreakMind
En línea
Connoisseurs of C semantics find C++ inferior to ++C
lann
Habitual
Desconectado
Mensajes: 322
maamamma
Re: no matching function, DeckOfCards
«
Respuesta #11 en:
Agosto 12, 2007, 01:34:48 »
eso es por que bool es una palabra reservada de C++ y en C puedes usar incluso bool como variable
alomejor compilaste prime como si fuera C
y la solucion? = 0
«
Última modificación: Noviembre 24, 2007, 09:31:28 por lann
»
En línea
am
lann
Habitual
Desconectado
Mensajes: 322
maamamma
Re: no matching function, DeckOfCards
«
Respuesta #12 en:
Febrero 28, 2008, 10:08:50 »
hmmmm...
// DeckOfCards class definition
class DeckOfCards
{
public:
DeckOfCards(); // constructor initializes deck
void shuffle(); // shuffles cards in deck
void deal(); // deals cards in deck
void dealFiveCard();
int checkHand();
void infoHand();
void selectionSort( int [], const int, bool (*)( int, int ) );
void swap( int * const, int * const );
static bool ascending( int, int ); // implements ascending order
static bool descending( int, int ); // implements descending order
enum Hand{ NOTHING = -1, PAIR = 2, TWO_PAIRS = 15,
KIND_3 = 3, KIND_4 = 4, FLUSH = 5, STRAIGHT = 7 };
private:
int deck[ 4 ][ 13 ]; // represents deck of cards
int hand[ 5 ][ 5 ];
}; // end class DeckOfCards
se solucionaba haciendo
static ascending y descending....
posteo esto por que nunca se publico la solucion.
un tip.
el apuntador this
y solo por si no recuerdan donde se utilizaba la funcion selectionSort
int DeckOfCards::checkHand()
{
...
//STRAIGHT
selectionSort( temp_face, 13, ascending );
bool straight = false;
for( int s = 0; s < 13 - 1; s++ )
{
if( temp_face[ s ] == ( temp_face[ s + 1 ] - 1 ) )
straight = true;
else
straight = false;
}
if( straight )
myHand = STRAIGHT;
break;
...
«
Última modificación: Febrero 28, 2008, 10:12:18 por lann
»
En línea
am
Páginas:
[
1
]
Comunidad Underground Hispana
|
Programacion
|
Programación
|
Carbide C/C#/C++
(Moderador:
Fashion
) | Tema:
-resuelto; no matching function, DeckOfCards
« anterior
próximo »
Ir a:
Por favor selecciona un destino:
-----------------------------
Foros De Consulta General
-----------------------------
=> Novedades
=> Dudas, Comentarios Y Sugerencias
=> Top 100
=> Off-Topic
=> Revista E-Zine
===> Noticias
-----------------------------
Phreaking, Hacking y Seguridad
-----------------------------
=> HacK GeneraL
===> Ingenieria Inversa
===> Encriptacion, Cryptografia
===> TV HACK
===> Cursos y Ezines
=====> Trucos Internet
=====> Textos Hacking
===> Defacing
=> Seguridad
=> Phreaking
===> Moviles
=> Bug y Exploits
===> Directorio de Exploits
=> Wargames, Retos Hack
-----------------------------
Hack Novato
-----------------------------
=> Hack para newbies
=> Todo Messenger
=> Troyanos y virus
-----------------------------
Sistemas Operativos
-----------------------------
=> Windows y otros sistemas operativos no libres
===> Problemas Tecnicos Windows
=> Sistemas operativos libres.
===> GNU/Linux
===> Manuales y Tutoriales
===> Descargas
-----------------------------
Programacion
-----------------------------
=> Programación
===> Programación Basica
===> Otros Lenguajes
===> Visual Basic y Net
===> ASM
===> Programacion Shell
===> Perl
===> Carbide C/C#/C++
===> Batch
===> SQL
=> Programacion para webmasters
===> Consultas Generales
===> Php
===> Html, XHTML, CSS
===> Java - Java Script
===> CMS O Scripts Pre-Fabricados
===> Posicionamiento en buscadores
-----------------------------
Artes Graficas
-----------------------------
=> Diseño Grafico
===> Battle Arts
===> Flash
===> Tutoriales
===> Galerías
===> Software
-----------------------------
Area Tecnica
-----------------------------
=> Networking & Wireless
=> Overclocking, Refrigeracion y demas
=> Hardware
===> Biblioteca Tecnica
=> Electronica Y Robotica
-----------------------------
Programas
-----------------------------
=> Software
===> Configuraciones de software
===> Pedidos de software
=> Cracks & Serialz
=> P2p, Bittorrent, Elinks
-----------------------------
Multimedia Y Divx
-----------------------------
=> Juegos PC Y Consolas
===> Dudas ayudas y comentarios de juegos
===> Pedidos de juegos
===> Juegos de Consola
=> Mp3
=> Multimedia
=> Peliculas Divx
-----------------------------
Entretenimiento Y sitios de interes
-----------------------------
=> Juegos, Humor y Adultos. (Diversión)
=> Paginas Webs Recomendadas
=> Videos
Powered by SMF 1.1.7
|
SMF © 2006-2007, Simple Machines LLC
Loading...