C++ åèæå
- C++11
- C++14
- C++17
- C++20
- C++ ç¼è¯å¨æ¯ææ åµè¡¨
- ç¬ç«ä¸å®¿ä¸»å®ç°
- C++ è¯è¨
- C++ å ³é®è¯
- é¢å¤çå¨
- C++ æ ååºå¤´æä»¶
- å ·åè¦æ±
- åè½ç¹æ§æµè¯ (C++20)
- å·¥å ·åº
- ç±»åæ¯æï¼åºæ¬ç±»åãRTTIãç±»åç¹æ§ï¼
- æ¦å¿µåº (C++20)
- é误å¤ç
- 卿å å管ç
- æ¥æåæ¶é´å·¥å ·
- å符串åº
- 容å¨åº
- è¿ä»£å¨åº
- èå´åº (C++20)
- ç®æ³åº
- æ°å¼åº
- å¸¸ç¨æ°å¦å½æ°
- æ°å¦ç¹æ®å½æ°
- ä¼ªéæºæ°çæ
- æµ®ç¹ç¯å¢
- std::feclearexcept
- std::fetestexcept
- std::feraiseexcept
- std::fegetexceptflag, std::fesetexceptflag
- std::fegetround, std::fesetround
- std::fegetenv, std::fesetenv
- std::feholdexcept
- std::feupdateenv
- FE_DIVBYZERO, FE_INEXACT, FE_INVALID, FE_OVERFLOW, FE_UNDERFLOW, FE_ALL_EXCEPT
- FE_DOWNWARD, FE_TONEAREST, FE_TOWARDZERO, FE_UPWARD
- FE_DFL_ENV
- std::midpoint
- std::lerp
- std::has_single_bit
- std::bit_ceil
- std::bit_floor
- std::bit_width
- std::rotl
- std::complex
- std::valarray
- ç¼è¯æ¶æçæ°ç®æ¯
- std::gcd
- std::lcm
- æ°å¦å¸¸æ°
- std::bit_cast
- std::rotr
- std::countl_zero
- std::countl_one
- std::countr_zero
- std::countr_one
- std::popcount
- 注é
- è¾å ¥/è¾åºåº
- æä»¶ç³»ç»åº
- æ¬å°ååº
- æ£å表达å¼åº
- ååæä½åº
- çº¿ç¨æ¯æåº
- å®éªæ§ C++ ç¹æ§
- æç¨çèµæº
- ç´¢å¼
- std 符å·ç´¢å¼
- åç¨æ¯æ (C++20)
- C++ å ³é®è¯
ä½ç½®ï¼é¦é¡µ > C++ åèæå >æ°å¼åº > æµ®ç¹ç¯å¢
æµ®ç¹ç¯å¢
æµ®ç¹ç¯å¢æ¯å®ç°ææ¯æçæµ®ç¹ç¶ææ å¿éååæ§å¶æ¨¡å¼ã宿¯çº¿ç¨å±åçï¼æ¯ä¸ªçº¿ç¨ä»äº²çº¿ç¨ç»§æ¿å ¶æµ®ç¹ç¯å¢çåå§ç¶æãæµ®ç¹è¿ç®ä¿®æ¹æµ®ç¹ç¶ææ å¿ï¼ä»¥æç¤ºå¼å¸¸ç»ææè¾ å©ä¿¡æ¯ãæµ®ç¹æ§å¶æ¨¡å¼çç¶æå½±åä¸äºæµ®ç¹è¿ç®ç产åºã
æµ®ç¹ç¯å¢è®¿é®åä¿®æ¹ä»
å¨
#pragma STDC FENV_ACCESS å¾å°æ¯æå¹¶è¢«è®¾ä¸º ON æ¶ææä¹ãå¦åå®ç°æåè®¾æµ®ç¹æ§å¶æ¨¡å¼å§ç»æ¯é»è®¤è
ï¼ä¸æµ®ç¹ç¶ææ å¿å³ä¸è¢«æµè¯æè¢«ä¿®æ¹çèªç±ãå®è·µä¸ï¼å°æ°å½åç¼è¯å¨ï¼ä¾å¦ HP aCC ã Oracle Studio æ IBM XL æ¾å¼æ¯æ #pragma ï¼ä½æ 论å¦ä½ï¼å¤§å¤æ°ç¼è¯å¨å
许ææä¹å°è®¿é®æµ®ç¹ç¯å¢ã
ç±»å
| å®ä¹äºå¤´æä»¶
<cfenv> | |
| fenv_t | 表示æ´ä¸ªæµ®ç¹ç¯å¢çç±»å |
| fexcept_t | æ±éå°è¡¨ç¤ºæææµ®ç¹ç¶ææ å¿çç±»å |
彿°
| (C++11) |
æ¸
餿å®çæµ®ç¹ç¶ææ å¿ (彿°) |
| (C++11) |
ç¡®å®è®¾ç½®äºåªä¸ªæå®çæµ®ç¹ç¶ææ å¿ (彿°) |
| (C++11) |
å¼åæå®çæµ®ç¹å¼å¸¸ (彿°) |
| (C++11)(C++11) |
仿µ®ç¹ç¯å¢ï¼æåå
¶ä¸ï¼å¤å¶æå®çæµ®ç¹ç¶ææ å¿ (彿°) |
| (C++11)(C++11) |
è·åæè®¾ç½®èå
¥æ¹å (彿°) |
| (C++11) |
ä¿åææ¢å¤å½åæµ®ç¹ç¯å¢ (彿°) |
| (C++11) |
ä¿åç¯å¢ï¼æ¸
餿æç¶ææ å¿ï¼å¹¶å¿½ç¥ææå°æ¥çé误 (彿°) |
| (C++11) |
æ¢å¤æµ®ç¹ç¯å¢å¹¶å¼åä¹åå¼åçå¼å¸¸ (彿°) |
å®
| æµ®ç¹å¼å¸¸ (å®å¸¸é) | |
| æµ®ç¹èå
¥æ¹å (å®å¸¸é) | |
| (C++11) |
é»è®¤æµ®ç¹ç¯å¢ (å®å¸¸é) |
注æ
æµ®ç¹å¼å¸¸ä¸ C++ å¼å¸¸æ å ³ãæµ®ç¹è¿ç®å¼åæµ®ç¹å¼å¸¸æ¶ï¼æµ®ç¹ç¯å¢çç¶ææ¹åï¼è¿è½ç¨ std::fetestexcept æµè¯ï¼ä½ç»å¤§å¤æ°å®ç°ä¸ C++ ç¨åºæ§è¡æç»èä¸ä¸æã
æç¼è¯å¨æ©å±ï¼å¯ç¨äºå¡å¨å¼åæµ®ç¹å¼å¸¸æ¶èªå¨çæ C++ å¼å¸¸ï¼
- GNU libc 彿°
feenableexcept()å¯ç¨æµ®ç¹å¼å¸¸çé·é±ï¼å®çæä¿¡å·SIGFPEãè¥ä½¿ç¨ç¼è¯å¨é项-fnon-call-exceptionsï¼å该信å·çå¤ç彿°å¯æåºç¨æ·å®ä¹ç C++ å¼å¸¸ã - MSVC 彿°
_control87()å¯ç¨æµ®ç¹å¼å¸¸çé·é±ï¼å®çæç¡¬ä»¶å¼å¸¸ï¼è¿è½ç¨_set_se_translatorè½¬æ¢æ C++ å¼å¸¸ã