assert
De cppreference.com
[] |
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
<metanoindex/>
<tbody> </tbody>| Dclar dans l'en-tte <cassert>
|
||
#ifdef NDEBUG #define assert(condition) ((void)0) #else #define assert(condition) /*implementation defined*/ #endif |
||
La dfinition de la macro
assert dpend d'une autre macro, NDEBUG, qui n'est pas dfinie par la bibliothque standard .Original:
The definition of the macro
assert depends on another macro, NDEBUG, which is not defined by the standard library.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Si
NDEBUG est dfini comme un nom de macro l'endroit o le code source est inclus <cassert>, puis assert ne fait rien .Original:
If
NDEBUG is defined as a macro name at the point in the source code where <cassert> is included, then assert does nothing.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Si
NDEBUG n'est pas dfini, puis vrifie si son argument assert (qui doit tre de type scalaire) gale zro. Si c'est le cas, assert sorties spcifiques l'implmentation des informations de diagnostic sur la sortie d'erreur standard et appelle std::abort. L'information de diagnostic est ncessaire d'inclure le texte de expression, ainsi que les valeurs des macros standard __FILE__, __LINE__, et la variable standard __func__ .Original:
If
NDEBUG is not defined, then assert checks if its argument (which must have scalar type) compares equal to zero. If it does, assert outputs implementation-specific diagnostic information on the standard error output and calls std::abort. The diagnostic information is required to include the text of expression, as well as the values of the standard macros __FILE__, __LINE__, and the standard variable __func__.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Paramtres
| condition | - | expression de type scalaire
Original: expression of scalar type The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
Retourne la valeur
(Aucun)
Original:
(none)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Exemple
#include <iostream>
// uncomment to disable assert()
// #define NDEBUG
#include <cassert>
int main()
{
assert(2+2==4);
std::cout << "Execution continues past the first assert\n";
assert(2+2==5);
std::cout << "Execution continues past the second assert\n";
}
Rsultat :
Execution continues past the first assert
test: test.cc:8: int main(): Assertion `2+2==5' failed.
Aborted
Voir aussi
| l'affirmation statique | effectue la compilation affirmation de vrifier (depuis C++11)
Original: performs compile-time assertion checking (depuis C++11) The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
provoque la terminaison anormale du programme (sans nettoyage) Original: causes abnormal program termination (without cleaning up) The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (fonction) | |