RE: error: redefinition of `class Array<T>'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Paulo,

Do you have #ifndef statements in your array.h header file so that it
only gets included once?  For example, should do something like this in
array.h (in all of your header files, actually):

#ifndef ARRAY_H
#define ARRAY_H

<array.h stuff goes here>

#endif

That way, the preprocessor will only process your header file once per
source file, even if it gets included by more than one other header file
that you're including in your program.

Make sense?

Cheers,
Lyle

-----Original Message-----
From: Paulo Cortes [mailto:cortes@xxxxxxxx] 
Sent: Monday, October 27, 2003 4:33 PM
To: gcc-help@xxxxxxxxxxx
Subject: error: redefinition of `class Array<T>'

Hi

I am building an Array group of classes, I have base Array class with
derived vector, matrix and cube. Each derived class works fine
separately,
but if I combine them in a program I get:

error: redefinition of `class Array<T>'

this happend beacuse when I :

#include <vector.h>
#include <matrix.h>
#include <cube.h>


array.h get included too, so the compiler triggers the error. The 
problem is that I have to include
array.h into the matrix, vector and cube header files in order to use 
the array base class.
Any help would be apprecciated. Many thanks

Paulo


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux