Question

Je mis en place une fonction abs appelé (). Je reçois cette erreur:

  

fonction Intrinsèque, ne peut pas être défini

Qu'est-ce que je fait de mal? J'utilise Visual Studio 2005.

Était-ce utile?

La solution

  

fonction Intrinsèque, ne peut pas être défini

Dans ce cas, intrinsèque signifie que le compilateur déjà a une mise en œuvre d'une fonction appelée abs, et que vous ne pouvez pas redéfinir.

Solution? Change votre nom de la fonction à autre chose, snakile_abs par exemple.

Consultez la documentation MSDN sur la fonction abs pour plus d'informations .

Autres conseils

Le problème est de ne pas en-tête ou non.

Le problème est que les fonctions intrinsèques, à savoir, les fonctions que le compilateur reconnaît et met en œuvre elle-même, généralement avec des optimisations qui ne seraient pas disponibles dans le code C seul, ne peut pas être défini.

Les noms de toutes les fonctions mathématiques (voir math.h)

Les noms de toutes les fonctions mathématiques préfixés par 'f' ou 'l'.

sont réservés à la mise en œuvre.

Définir static int abs(int x) { ... } devrait être légal, mais simplement int abs(int x) { ... } a un comportement non défini, et donc une chose raisonnable une compilation pourrait faire est question d'une erreur.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top