Problème déclaration multiple de fonction
Bonjour,
Dans le cadre d'un projet où j'utilise le C++ j'ai des soucis de déclaration multiple de fonction.
Mon code est oraganisé de la manière suivante:
Main.cpp
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
#include<stdio.h>
#include <time.h>
#include <math.h>
#include "bmpusmp.h"
int main(int argc, char* argv[])
{
...
return 0;
} |
secondary_functions.cpp
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
#include<stdio.h>
#include <time.h>
#include <math.h>
#include "getopt.h"
#include "bmpusmp.h"
#include "secondary_functions.h"
void free_imatrix(int **m, long nrl, long nrh, long ncl, long nch)
{
...
} |
secondary_function.h
Code:
1 2 3 4 5 6 7 8 9 10
|
#ifndef SECONDARY_FUNCTIONS_H
#define SECONDARY_FUNCTIONS_H
#define NR_END 1
#define FREE_ARG char*
void free_imatrix(int**, long, long, long, long);
#endif |
bmpusmp.h
Code:
1 2 3 4 5 6 7 8 9 10 11
|
#ifndef BMPUSMP_H
#define BMPUSMP_H
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
... fonctions utilisées dans le main
#endif |
Quand je compile mon code j'ai des erreurs du type "multiple declaration de {fonction} (qui sont déclarées et définies dans mon bmpusmp.f et appelées dans mon main). Pourtant je ne devrai pas avoir de problèmes comme j'ai utilisé le #indef /#define/#endif ?
Merci pour votre aide, et faites moi signe si je suis pas assez précis sur ce que je donne de mon code.