NECESITO AYUDA CON UNA FUNCION EN C++
Esto es de carácter urgente.
Tengo un programa pricipal en c++ con una función que tiene de parametros de de entrada una estructura (struct) y otros enteros.
En el programa principal me funciona de perlas la función, pero no encuentro manera alguna de que me funcione en una librería.
Como puedo hacer?
Me podrian pasar o mostrar algun ejemplo de este tipo de problema?
Un saludo
Lucas
Tengo un programa pricipal en c++ con una función que tiene de parametros de de entrada una estructura (struct) y otros enteros.
En el programa principal me funciona de perlas la función, pero no encuentro manera alguna de que me funcione en una librería.
Como puedo hacer?
Me podrian pasar o mostrar algun ejemplo de este tipo de problema?
Un saludo
Lucas
Hola, por que no posteas la definicion y parte de la implementacion de tu función, asi tenemos algo concreto con que ayudarte.
Suerte
Suerte
Este es el codigo y quiero implemetar el codigo en una libreria y no se como
#include <iostream>
#include <string>
using namespace std;
struct Tarticulo {
string nombreArticulo;
float precioArticulo;
};
int IntroducirArticulo(Tarticulo articulos[], string nombre){
int i,j,k;
i=0;
j=0;
do{
if(nombre==articulos[i].nombreArticulo){
j=1;
k=i;
return(1);
}
i=i+1;
}while((i<19)&&(j!=1));
i=0;
if(j!=1){
k=7;
articulos[k].nombreArticulo=nombre;
cout<<"Introduce el precio:";
cin>>articulos[k].precioArticulo;
return(0);
}
else{
cout<<articulos[2].nombreArticulo;
cout<<" ";
cout<<articulos[2].precioArticulo;
cout<<endl;
}
}
int main()
{
Tarticulo articulos[20];
string nombre;
int opc,num;
articulos[2].nombreArticulo="zapato";
articulos[2].precioArticulo=48.18;
articulos[15].nombreArticulo="gorra";
articulos[15].precioArticulo=21.45;
cout<<"Introduce el articulo"<<endl;
getline(cin,nombre);
num=IntroducirArticulo(articulos,nombre);
if (num==1){
cout<<"El articulo ya existe"<<endl;
cin>>opc;
}
else{
cout<<articulos[7].nombreArticulo;
cout<<" ";
cout<<articulos[7].precioArticulo;
cout<<endl;
cin>>opc;
}
}
#include <iostream>
#include <string>
using namespace std;
struct Tarticulo {
string nombreArticulo;
float precioArticulo;
};
int IntroducirArticulo(Tarticulo articulos[], string nombre){
int i,j,k;
i=0;
j=0;
do{
if(nombre==articulos[i].nombreArticulo){
j=1;
k=i;
return(1);
}
i=i+1;
}while((i<19)&&(j!=1));
i=0;
if(j!=1){
k=7;
articulos[k].nombreArticulo=nombre;
cout<<"Introduce el precio:";
cin>>articulos[k].precioArticulo;
return(0);
}
else{
cout<<articulos[2].nombreArticulo;
cout<<" ";
cout<<articulos[2].precioArticulo;
cout<<endl;
}
}
int main()
{
Tarticulo articulos[20];
string nombre;
int opc,num;
articulos[2].nombreArticulo="zapato";
articulos[2].precioArticulo=48.18;
articulos[15].nombreArticulo="gorra";
articulos[15].precioArticulo=21.45;
cout<<"Introduce el articulo"<<endl;
getline(cin,nombre);
num=IntroducirArticulo(articulos,nombre);
if (num==1){
cout<<"El articulo ya existe"<<endl;
cin>>opc;
}
else{
cout<<articulos[7].nombreArticulo;
cout<<" ";
cout<<articulos[7].precioArticulo;
cout<<endl;
cin>>opc;
}
}
En www.geocities.com/chuidiang tienes un tutorial de como hacer librerias. Esta para linux, pero los conceptos son los mismos, unicamente cambian los comandos de compilado.
Basicamente tienes que hacer un .h con la definicion de TArtitculo y el prototipo de la funcion.
Luego haces un .cpp con el codigo de la función.
Compilas el cpp diciendole al compilador que cree una libreria y no un ejecutable. El como se le dice eso al compilador, depende de qué compilador estes usando. En Visual C++ tendrías que crear un proyecto de libreria.
Se bueno.
Basicamente tienes que hacer un .h con la definicion de TArtitculo y el prototipo de la funcion.
Luego haces un .cpp con el codigo de la función.
Compilas el cpp diciendole al compilador que cree una libreria y no un ejecutable. El como se le dice eso al compilador, depende de qué compilador estes usando. En Visual C++ tendrías que crear un proyecto de libreria.
Se bueno.
