• Viernes 15 de Noviembre de 2024, 09:57

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - maveganzones

Páginas: [1]
1
C/C++ / Re: Clases En Librería Estáticas
« en: Lunes 28 de Febrero de 2005, 19:07 »
Nueva movida con las librerías estáticas:  :ayuda:

Tengo un proyecto llamado "libreria" que pretende ser una librería estática con funciones y clases de apoyo que voy a usar después en distintos proyectos.

Para ello tengo varios ficheros de cabecera con sus respectivos ficheros de implementación:

fichero1.h -> fichero1.cpp
fichero2.h -> fichero2.cpp
...

fichero1 contiene una serie de clases y fichero 2 sólo tiene funciones.

Las funciones de fichero2 usan las clases de fichero1. Ningún problema. Me compila y construye bien y ya tengo mi librería.

Ahora creo un proyecto nuevo en el que voy a usar "libreria.lib". Si utilizo las clases definidas en "fichero1" no hay ningún problema; pero si utlizo las funciones definidas en "fichero2" y que tb esán incluidas en lalibrería me da un error al linkar.

¿Alguien tiene alguna pista?

 :brickwall:

2
C/C++ / Re: Clases En Librería Estáticas
« en: Martes 22 de Febrero de 2005, 17:32 »
Solucionado. había algún problema con la opción "Precompiled headers" de visual c++.

3
C/C++ / Re: Clases En Librería Estáticas
« en: Martes 22 de Febrero de 2005, 17:01 »
Tienes razón.

fichero.h
==================

#ifndef FICHERO_H
#define FICHERO_H

class A {

public:

void A();
void ~A();
int getNumber();
void setNumber(int n);

private:

int number;

#endif

===========================

fichero.cpp
=======

#include "fichero.h"

void A::A() {
number = 0;
}

void A::~A() {}

void setNumber(int n) { number = n; }

int getNumber() { return number; }

===========================

Esto definido como una clase normal dentro de un proyecto "Win32 apllication"  funciona, pero dentro de un proyecto "Static Library" no.

Al compilar fichero.cpp me da el error "A is not a namespace not a class".

¿Alguna idea?

4
C/C++ / Clases En Librería Estáticas
« en: Lunes 21 de Febrero de 2005, 20:36 »
Hola a todos.

Estoy creando una ibrería estática llamada 'X' en c++ con el editor vc6.

Dentro del proyecto tengo dos ficheros:
fichero.h
fichero.cpp

En fichero.h defino una clase 'A' y sus métodos de la forma habitual.

En fichero.cpp implemento la clase 'A' y sus métodos tb de la forma habitual.

Al compilar me da el siguiente error: 'A' no es un espacio de nombres ni una clase.

El mismo código compilado como una clase aparte de un proyecto 'Aplicación win32' funciona así que estoy cometiendo un error de base en cuanto a la programación de librerías estáticas.

Agradecería mucho q me ayudaseis porque estoy parado y seguro que es una chorrada.

Un saludo

Páginas: [1]