C++ åèæå
- C++11
- C++14
- C++17
- C++20
- C++ ç¼è¯å¨æ¯ææ åµè¡¨
- ç¬ç«ä¸å®¿ä¸»å®ç°
- C++ è¯è¨
- C++ å ³é®è¯
- é¢å¤çå¨
- C++ æ ååºå¤´æä»¶
- æ ååºå¤´æä»¶ <ctime>
- æ ååºå¤´æä»¶ <cstring>
- æ ååºå¤´æä»¶ <set>
- æ ååºå¤´æä»¶ <cctype>
- æ ååºå¤´æä»¶ <cwctype>
- æ ååºå¤´æä»¶ <utility>
- æ ååºå¤´æä»¶ <queue>
- æ ååºå¤´æä»¶ <complex>
- æ ååºå¤´æä»¶ <iterator>
- æ ååºå¤´æä»¶ <algorithm>
- æ ååºå¤´æä»¶ <valarray>
- æ ååºå¤´æä»¶ <numeric>
- æ ååºå¤´æä»¶ <cmath>
- æ ååºå¤´æä»¶ <iosfwd>
- æ ååºå¤´æä»¶ <ios>
- æ ååºå¤´æä»¶ <iomanip>
- æ ååºå¤´æä»¶ <streambuf>
- æ ååºå¤´æä»¶ <istream>
- æ ååºå¤´æä»¶ <ostream>
- æ ååºå¤´æä»¶ <iostream>
- æ ååºå¤´æä»¶ <sstream>
- æ ååºå¤´æä»¶ <clocale>
- æ ååºå¤´æä»¶ <vector>
- æ ååºå¤´æä»¶ <deque>
- æ ååºå¤´æä»¶ <list>
- æ ååºå¤´æä»¶ <map>
- æ ååºå¤´æä»¶ <cwchar>
- æ ååºå¤´æä»¶ <locale>
- æ ååºå¤´æä»¶ <codecvt>
- æ ååºå¤´æä»¶ <bitset>
- æ ååºå¤´æä»¶ <functional>
- æ ååºå¤´æä»¶ <stdexcept>
- æ ååºå¤´æä»¶ <csignal>
- æ ååºå¤´æä»¶ <csetjmp>
- æ ååºå¤´æä»¶ <stack>
- æ ååºå¤´æä»¶ <cassert>
- æ ååºå¤´æä»¶ <cerrno>
- æ ååºå¤´æä»¶ <memory>
- æ ååºå¤´æä»¶ <typeindex>
- æ ååºå¤´æä»¶ <type_traits>
- æ ååºå¤´æä»¶ <chrono>
- æ ååºå¤´æä»¶ <initializer_list>
- æ ååºå¤´æä»¶ <tuple>
- æ ååºå¤´æä»¶ <scoped_allocator>
- æ ååºå¤´æä»¶ <cstdint>
- æ ååºå¤´æä»¶ <cinttypes>
- æ ååºå¤´æä»¶ <system_error>
- æ ååºå¤´æä»¶ <cuchar>
- æ ååºå¤´æä»¶ <array>
- æ ååºå¤´æä»¶ <forward_list>
- æ ååºå¤´æä»¶ <unordered_set>
- æ ååºå¤´æä»¶ <unordered_map>
- æ ååºå¤´æä»¶ <random>
- æ ååºå¤´æä»¶ <ratio>
- æ ååºå¤´æä»¶ <cfenv>
- æ ååºå¤´æä»¶ <regex>
- æ ååºå¤´æä»¶ <atomic>
- æ ååºå¤´æä»¶ <thread>
- æ ååºå¤´æä»¶ <mutex>
- æ ååºå¤´æä»¶ <future>
- æ ååºå¤´æä»¶ <condition_variable>
- æ ååºå¤´æä»¶ <any>
- æ ååºå¤´æä»¶ <optional>
- æ ååºå¤´æä»¶ <variant>
- æ ååºå¤´æä»¶ <memory_resource>
- æ ååºå¤´æä»¶ <string_view>
- æ ååºå¤´æä»¶ <charconv>
- æ ååºå¤´æä»¶ <execution>
- æ ååºå¤´æä»¶ <filesystem>
- æ ååºå¤´æä»¶ <concepts>
- æ ååºå¤´æä»¶ <coroutine>
- æ ååºå¤´æä»¶ <compare>
- æ ååºå¤´æä»¶ <version>
- æ ååºå¤´æä»¶ <source_location>
- æ ååºå¤´æä»¶ <format>
- æ ååºå¤´æä»¶ <span>
- æ ååºå¤´æä»¶ <ranges>
- æ ååºå¤´æä»¶ <bit>
- æ ååºå¤´æä»¶ <numbers>
- æ ååºå¤´æä»¶ <syncstream>
- æ ååºå¤´æä»¶ <stop_token>
- æ ååºå¤´æä»¶ <semaphore>
- æ ååºå¤´æä»¶ <latch>
- æ ååºå¤´æä»¶ <barrier>
- æ ååºå¤´æä»¶ <string>
- æ ååºå¤´æä»¶ <cstddef>
- æ ååºå¤´æä»¶ <limits>
- æ ååºå¤´æä»¶ <cfloat>
- æ ååºå¤´æä»¶ <climits>
- æ ååºå¤´æä»¶ <cstdlib>
- æ ååºå¤´æä»¶ <new>
- æ ååºå¤´æä»¶ <typeinfo>
- æ ååºå¤´æä»¶ <exception>
- æ ååºå¤´æä»¶ <cstdarg>
- æ ååºå¤´æä»¶ <ciso646>
- æ ååºå¤´æä»¶ <cstdalign>
- æ ååºå¤´æä»¶ <cstdbool>
- æ ååºå¤´æä»¶ <fstream>
- æ ååºå¤´æä»¶ <cstdio>
- æ ååºå¤´æä»¶ <strstream>
- æ ååºå¤´æä»¶ <shared_mutex>
- æ ååºå¤´æä»¶ <ccomplex>
- æ ååºå¤´æä»¶ <ctgmath>
- 注é
- å ·åè¦æ±
- åè½ç¹æ§æµè¯ (C++20)
- å·¥å ·åº
- ç±»åæ¯æï¼åºæ¬ç±»åãRTTIãç±»åç¹æ§ï¼
- æ¦å¿µåº (C++20)
- é误å¤ç
- 卿å å管ç
- æ¥æåæ¶é´å·¥å ·
- å符串åº
- 容å¨åº
- è¿ä»£å¨åº
- èå´åº (C++20)
- ç®æ³åº
- æ°å¼åº
- è¾å ¥/è¾åºåº
- æä»¶ç³»ç»åº
- æ¬å°ååº
- æ£å表达å¼åº
- ååæä½åº
- çº¿ç¨æ¯æåº
- å®éªæ§ C++ ç¹æ§
- æç¨çèµæº
- ç´¢å¼
- std 符å·ç´¢å¼
- åç¨æ¯æ (C++20)
- C++ å ³é®è¯
ä½ç½®ï¼é¦é¡µ > C++ åèæå >C++ æ ååºå¤´æä»¶ > æ ååºå¤´æä»¶ <iterator>
æ ååºå¤´æä»¶ <iterator>
æ¤å¤´æä»¶æ¯è¿ä»£å¨åºçä¸é¨åã
æ¦å¿µ | |
è¿ä»£å¨æ¦å¿µ | |
æå®ç±»åéè¿åºç¨è¿ç®ç¬¦ * å¯è¯» (æ¦å¿µ) | |
| æå®å¯åè¿ä»£å¨æå¼ç¨ç对象åå
¥å¼ (æ¦å¿µ) | |
| æå® semiregular ç±»åè½ä»¥ååèªå¢è¿ç®ç¬¦èªå¢ (æ¦å¿µ) | |
| æå® weakly_incrementable ç±»åä¸çèªå¢æä½ä¿æç¸çæ§ï¼èä¸è¯¥ç±»å为 equality_comparable (æ¦å¿µ) | |
| æå®è¯¥ç±»å对象å¯ä»¥èªå¢ä¸å¯ä»¥è§£å¼ç¨ (æ¦å¿µ) | |
| æå®ç±»å为æä¸ª input_or_output_iterator ç±»åçå¨ä½ç±»å (æ¦å¿µ) | |
æå®å¯å¯¹ä¸ä¸ªè¿ä»£å¨åä¸ä¸ªå¨ä½åºç¨ - è¿ç®ç¬¦ï¼ä»¥å¨å¸¸æ°æ¶é´è®¡ç®å
¶è·ç¦» (æ¦å¿µ) | |
| æå®ç±»å为è¾å
¥è¿ä»£å¨ï¼å³å¯è¯»åå
¶æå¼ç¨çå¼ï¼ä¸å¯å/åèªå¢ (æ¦å¿µ) | |
| æå®ç±»å为ç»å®çå¼ç±»åçè¾åºè¿ä»£å¨ï¼å³å¯åå
¶åå
¥è¯¥ç±»åçå¼ï¼ä¸å¯å/åèªå¢ (æ¦å¿µ) | |
| æå® input_iterator 为ååè¿ä»£å¨ï¼æ¯æç¸çæ¯è¾ä¸å¤è¶æä½ (æ¦å¿µ) | |
| æå® forward_iterator 为ååè¿ä»£å¨ï¼æ¯æååç§»å¨ (æ¦å¿µ) | |
| æå® bidirectional_iterator ä¸ºéæºè®¿é®è¿ä»£å¨ï¼æ¯æå¸¸æ°æ¶é´å
çåè¿å䏿 è®¿é® (æ¦å¿µ) | |
| æå® random_access_iterator 为è¿ç»è¿ä»£å¨ï¼æä»£å
åä¸è¿ç»ç¸æ¥çå
ç´ (æ¦å¿µ) | |
é´æ¥å¯è°ç¨æ¦å¿µ | |
| æå®å¯è°ç¨ç±»åè½ä»¥è§£å¼ç¨æä¸ª indirectly_readable ç±»åçç»æè¿è¡è°ç¨ (æ¦å¿µ) | |
| æå®å¯è°ç¨ç±»åï¼å¨ä»¥è§£å¼ç¨ä¸ä¸ª indirectly_readable ç±»åçç»æè¿è¡è°ç¨æ¶ï¼æ»¡è¶³ predicate (æ¦å¿µ) | |
| æå®å¯è°ç¨ç±»åï¼å¨ä»¥è§£å¼ç¨ä¸¤ä¸ª indirectly_readable ç±»åçç»æè¿è¡è°ç¨æ¶ï¼æ»¡è¶³ predicate (æ¦å¿µ) | |
| æå®å¯è°ç¨ç±»åï¼å¨ä»¥è§£å¼ç¨ä¸¤ä¸ª indirectly_readable ç±»åçç»æè¿è¡è°ç¨æ¶ï¼æ»¡è¶³ equivalence_relation (æ¦å¿µ) | |
| æå®å¯è°ç¨ç±»åï¼å¨ä»¥è§£å¼ç¨ä¸¤ä¸ª indirectly_readable ç±»åçç»æè¿è¡è°ç¨æ¶ï¼æ»¡è¶³ strict_weak_order (æ¦å¿µ) | |
常ç¨ç®æ³è¦æ± | |
| æå®å¯ä» indirectly_readable ç±»åç§»å¨å¼ç» indirectly_writable ç±»å (æ¦å¿µ) | |
| æå®å¯ä» indirectly_readable ç±»åç§»å¨å¼ç» indirectly_writable ç±»åï¼ä¸è¯¥ç§»å¨å¯ä»¥éè¿ä¸é´å¯¹è±¡è¿è¡ (æ¦å¿µ) | |
| æå®å¯ä» indirectly_readable ç±»åå¤å¶å¼ç» indirectly_writable ç±»å (æ¦å¿µ) | |
| æå®å¯ä» indirectly_readable ç±»åå¤å¶å¼ç» indirectly_writable ç±»åï¼ä¸è¯¥å¤å¶å¯ä»¥éè¿ä¸é´å¯¹è±¡è¿è¡ (æ¦å¿µ) | |
| æå®è½äº¤æ¢ä¸¤ä¸ª indirectly_readable ç±»åæå¼ç¨çå¼ (æ¦å¿µ) | |
| æå®è½æ¯è¾ä¸¤ä¸ª indirectly_readable ç±»åæå¼ç¨çå¼ (æ¦å¿µ) | |
| æå®å¨åä½éæå
ç´ çç®æ³çå
±ç¨è¦æ± (æ¦å¿µ) | |
| æå®éè¿å¤å¶å
ç´ å°å·²æåºåºåå½å¹¶å°è¾åºåºåä¸çç®æ³çè¦æ± (æ¦å¿µ) | |
| æå®éæåºå为æåºåºåçç®æ³çå
±ç¨è¦æ± (æ¦å¿µ) | |
ç±» | |
ç®æ³å·¥å · | |
| 计ç®å¨è§£å¼ç¨æç» indirectly_readable ç±»åçç»æä¸è°ç¨å¯è°ç¨å¯¹è±¡çç»æ (å«å模æ¿) | |
| ç¨äºå¯¹æ¥åæå½±çç®æ³æå®å¶çº¦çè¾
婿¨¡æ¿ (类模æ¿) | |
å ³èç±»å | |
| è®¡ç® weakly_incrementable ç±»åç差类å (类模æ¿) | |
| è®¡ç® indirectly_readable ç±»åçå¼ç±»å (类模æ¿) | |
| 计ç®è¿ä»£å¨çå
³èç±»å (å«å模æ¿) | |
åè¯ | |
| 为è¿ä»£å¨å项æ§è´¨æä¾ç»ä¸æ¥å£ (类模æ¿) | |
| ç¨äºæç¤ºè¿ä»£å¨ç±»å«ç空类类å (ç±») | |
| (C++17 ä¸å¼ç¨) |
ç¨äºç®åç®åçè¿ä»£å¨çå¿
è¦ç±»åå®ä¹çåºç±» (类模æ¿) |
éé å¨ | |
| éåºéåçè¿ä»£å¨éé
å¨ (类模æ¿) | |
| (C++11) |
è§£å¼ç¨ç»æä¸ºå³å¼å¼ç¨çè¿ä»£å¨éé
å¨ (类模æ¿) |
| (C++20) |
ç¨äº std::move_iterator çå¨ä½éé
å¨ (类模æ¿) |
| (C++20) |
éé
ä¸ä¸ªè¿ä»£å¨ç±»ååå
¶å¨ä½ä¸ºä¸ä¸ªå
Œ
±è¿ä»£å¨ç±»å (类模æ¿) |
| (C++20) |
ç¨äºç¥æå
¶è¾¹ççè¿ä»£å¨çé»è®¤å¨ä½ (ç±») |
| (C++20) |
对å°èå´ç»å°¾è·ç¦»è¿è¡è·è¸ªçè¿ä»£å¨éé
å¨ (类模æ¿) |
| (C++20) |
å§ç»ä¸ä»»ä½ weakly_incrementable ç±»åæ¯è¾é½ä¸ç¸ççå¨ä½ (ç±») |
| ç¨äºå¨å®¹å¨å°¾é¨æå
¥çè¿ä»£å¨éé
å¨ (类模æ¿) | |
| ç¨äºå¨å®¹å¨å¤´é¨æå
¥çè¿ä»£å¨éé
å¨ (类模æ¿) | |
| ç¨äºæå
¥å®¹å¨çè¿ä»£å¨éé
å¨ (类模æ¿) | |
æµè¿ä»£å¨ | |
| ä» std::basic_istream 读åçè¾å
¥è¿ä»£å¨ (类模æ¿) | |
| åå
¥ std::basic_ostream çè¾åºè¿ä»£å¨ (类模æ¿) | |
| ä» std::basic_streambuf 读åçè¾å
¥è¿ä»£å¨ (类模æ¿) | |
| åå
¥ std::basic_streambuf çè¾åºè¿ä»£å¨ (类模æ¿) | |
å®å¶ç¹å¯¹è±¡ | |
| å®ä¹äºå½å空é´
std::ranges | |
| å°è§£å¼ç¨è¿ä»£å¨çç»æè½¬å为å
¶å
³èçå³å¼å¼ç¨ç±»å (å®å¶ç¹å¯¹è±¡) | |
| 交æ¢ä¸¤ä¸ªå¯è§£å¼ç¨å¯¹è±¡æå¼ç¨çå¼ (å®å¶ç¹å¯¹è±¡) | |
彿° | |
éé å¨ | |
| (C++14) |
åå»ºæ¥æä»å®åæ¨åºçç±»åç std::reverse_iterator (彿°æ¨¡æ¿) |
| (C++11) |
åå»ºæ¥æä»å®åæ¨åºçç±»åç std::move_iterator (彿°æ¨¡æ¿) |
| åå»ºæ¥æä»å®åæ¨åºçç±»åç std::front_insert_iterator (彿°æ¨¡æ¿) | |
| åå»ºæ¥æä»å®åæ¨åºçç±»åç std::back_insert_iterator (彿°æ¨¡æ¿) | |
| åå»ºæ¥æä»å®åæ¨åºçç±»åç std::insert_iterator (彿°æ¨¡æ¿) | |
éæå彿° | |
| (C++20 ä¸ç§»é¤)(C++20) |
æ¯è¾åºå±è¿ä»£å¨ (彿°æ¨¡æ¿) |
| 令è¿ä»£å¨åè¿ (彿°æ¨¡æ¿) | |
| 计ç®ä¸¤ä¸ªè¿ä»£å¨éé
å¨é´çè·ç¦» (彿°æ¨¡æ¿) | |
| æ¯è¾åºå±è¿ä»£å¨ (彿°æ¨¡æ¿) | |
| 令è¿ä»£å¨åè¿ (彿°æ¨¡æ¿) | |
| 计ç®ä¸¤ä¸ªè¿ä»£å¨éé
å¨é´çè·ç¦» (彿°æ¨¡æ¿) | |
| (C++20 ä¸ç§»é¤) |
æ¯è¾ä¸¤ä¸ª istream_iterator (彿°æ¨¡æ¿) |
| (C++20 ä¸ç§»é¤) |
æ¯è¾ä¸¤ä¸ª istreambuf_iterator (彿°æ¨¡æ¿) |
æä½ | |
| 令è¿ä»£å¨åè¿ç»å®çè·ç¦» (彿°æ¨¡æ¿) | |
| è¿å两个è¿ä»£å¨é´çè·ç¦» (彿°æ¨¡æ¿) | |
| (C++11) |
令è¿ä»£å¨èªå¢ (彿°æ¨¡æ¿) |
| (C++11) |
令è¿ä»£å¨èªå (彿°æ¨¡æ¿) |
| (C++20) |
令è¿ä»£å¨åè¿ç»å®çè·ç¦»æå°ç»å®çè¾¹ç (niebloid) |
| (C++20) |
è¿åè¿ä»£å¨ä¸å¨ä½é´çè·ç¦»ï¼æèå´èµ·å§ä¸ç»å°¾é´çè·ç¦» (niebloid) |
| (C++20) |
èªå¢è¿ä»£å¨ç»å®çè·ç¦»æå°è¾¹ç (niebloid) |
| (C++20) |
èªåè¿ä»£å¨ç»å®çè·ç¦»æå°è¾¹ç (niebloid) |
èå´è®¿é® | |
| (C++11)(C++14) |
è¿åæå容卿æ°ç»èµ·å§çè¿ä»£å¨ (彿°æ¨¡æ¿) |
| (C++11)(C++14) |
è¿åæå容卿æ°ç»ç»å°¾çè¿ä»£å¨ (彿°æ¨¡æ¿) |
| (C++14) |
è¿åæåä¸ä¸ªå®¹å¨ææ°ç»çéåè¿ä»£å¨ (彿°æ¨¡æ¿) |
| (C++14) |
è¿å容卿æ°ç»çéåå°¾è¿ä»£å¨ (彿°æ¨¡æ¿) |
| (C++17)(C++20) |
è¿å容卿æ°ç»çå¤§å° (彿°æ¨¡æ¿) |