J'ai hérité quelques fichiers C++ et un makefile d'accompagnement, que je suis en train de mettre en VS2010 comme une solution. J'ai créé un projet vide et ajouté les fichiers C++ et en-tête (.hpp) appropriés pour l'une des cibles du fichier makefile.erreur de compilation cmath lors de la compilation ancien code C++ dans VS2010
Lorsque je tente de compiler le projet, cependant, je reçois immédiatement un grand nombre d'erreurs C2061 (identificateur d'erreur de syntaxe) provenant de cmath concernant acosf, asinf, atanf, etc.
La ligne d'erreur dans cmath:
#pragma once
#ifndef _CMATH_
#define _CMATH_
#include <yvals.h>
#ifdef _STD_USING
#undef _STD_USING
#include <math.h>
#define _STD_USING
#else /* _STD_USING */
#include <math.h>
#endif /* _STD_USING */
#if _GLOBAL_USING && !defined(RC_INVOKED)
_STD_BEGIN
using _CSTD acosf; using _CSTD asinf;
le bloc supérieur du fichier concerné C++ (bien que nommé comme .C):
#include <fstream>
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
using namespace std;
Suivi par la fonction principale(), qui ne remet pas du TRIG fonctionne directement. Cela doit être quelque chose de vraiment évident, mais il me manque. Quelqu'un peut-il aider?
Merci!
En fait, je pense que la plupart des compilateurs compilez les fichiers .C en C++ si le système de fichiers est sensible à la casse. Mais dans Windows, le système de fichiers n'est pas sensible à la casse. Donc, vous pourriez être sur quelque chose ici. –
bien, je le testerais si j'avais une installation Windows à proximité :). Je sais que vous pouvez spécifier la compilation comme ... réglage en studio visuel, mais je ne sais pas comment il "devine" la valeur initiale (basée sur un projet, basée sur un fichier, ...). – KillianDS
son extension à base - .c ou fichiers .C compilés comme C et Cpp/.CPP ou toute autre variation est compilé sous forme de fichiers du RPC, en studio visuel. Il ne se compile pas en CPP comme le pense l'auteur, il compile en C. Quant aux inclusions d'en-têtes mixtes C/CPP, ce n'est pas un tueur. –