وبلاگ بلیان

Information technology - Programming languages - C++

معرفی کتاب «Information technology - Programming languages - C++» نوشتهٔ ISO/IEC JTC 1/SC 22 Programming languages, their environments and system software interfaces، منتشرشده توسط نشر International Organization for Standardization در سال 1488. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است. «Information technology - Programming languages - C++» در دستهٔ بدون دسته‌بندی قرار دارد.

ISO/IEC 14882:2011 specifies requirements for implementations of the C++ programming language. The first such requirement is that they implement the language, and so ISO/IEC 14882:2011 also defines C++. Other requirements and relaxations of the first requirement appear at various places within ISO/IEC 14882:2011. C++ is a general purpose programming language based on the C programming language as specified in ISO/IEC 9899:1999. In addition to the facilities provided by C, C++ provides additional data types, classes, templates, exceptions, namespaces, operator overloading, function name overloading, references, free store management operators, and additional library facilities. Contents......Page 3 List of Tables......Page 11 List of Figures......Page 15 1.2 Normative references......Page 17 1.3 Terms and definitions......Page 18 1.4 Implementation compliance......Page 21 1.6 Syntax notation......Page 22 1.8 The C++ object model......Page 23 1.9 Program execution......Page 24 1.10 Multi-threaded executions and data races......Page 28 1.11 Acknowledgments......Page 32 2.2 Phases of translation......Page 33 2.3 Character sets......Page 34 2.4 Trigraph sequences......Page 35 2.5 Preprocessing tokens......Page 36 2.8 Comments......Page 37 2.11 Identifiers......Page 38 2.12 Keywords......Page 39 2.14.2 Integer literals......Page 40 2.14.3 Character literals......Page 42 2.14.5 String literals......Page 44 2.14.8 User-defined literals......Page 47 3.1 Declarations and definitions......Page 50 3.2 One definition rule......Page 52 3.3.1 Declarative regions and scopes......Page 54 3.3.2 Point of declaration......Page 55 3.3.6 Namespace scope......Page 57 3.3.7 Class scope......Page 58 3.3.9 Template parameter scope......Page 59 3.3.10 Name hiding......Page 60 3.4.1 Unqualified name lookup......Page 61 3.4.2 Argument-dependent name lookup......Page 65 3.4.3 Qualified name lookup......Page 67 3.4.3.1 Class members......Page 68 3.4.3.2 Namespace members......Page 69 3.4.4 Elaborated type specifiers......Page 72 3.4.5 Class member access......Page 73 3.5 Program and linkage......Page 75 3.6.2 Initialization of non-local variables......Page 78 3.6.3 Termination......Page 80 3.7 Storage duration......Page 81 3.7.4 Dynamic storage duration......Page 82 3.7.4.2 Deallocation functions......Page 83 3.7.4.3 Safely-derived pointers......Page 84 3.8 Object lifetime......Page 85 3.9 Types......Page 88 3.9.1 Fundamental types......Page 91 3.9.2 Compound types......Page 92 3.9.3 CV-qualifiers......Page 93 3.10 Lvalues and rvalues......Page 94 3.11 Alignment......Page 96 4 Standard conversions......Page 97 4.4 Qualification conversions......Page 98 4.5 Integral promotions......Page 99 4.8 Floating point conversions......Page 100 4.11 Pointer to member conversions......Page 101 4.13 Integer conversion rank......Page 102 5 Expressions......Page 103 5.1.1 General......Page 105 5.1.2 Lambda expressions......Page 108 5.2 Postfix expressions......Page 113 5.2.2 Function call......Page 114 5.2.5 Class member access......Page 116 5.2.7 Dynamic cast......Page 118 5.2.8 Type identification......Page 119 5.2.9 Static cast......Page 120 5.2.10 Reinterpret cast......Page 122 5.2.11 Const cast......Page 123 5.3.1 Unary operators......Page 125 5.3.2 Increment and decrement......Page 126 5.3.4 New......Page 127 5.3.5 Delete......Page 131 5.3.7 noexcept operator......Page 132 5.4 Explicit type conversion (cast notation)......Page 133 5.5 Pointer-to-member operators......Page 134 5.7 Additive operators......Page 135 5.9 Relational operators......Page 137 5.10 Equality operators......Page 138 5.14 Logical AND operator......Page 139 5.16 Conditional operator......Page 140 5.17 Assignment and compound assignment operators......Page 141 5.19 Constant expressions......Page 143 6.3 Compound statement or block......Page 146 6.4 Selection statements......Page 147 6.4.2 The switch statement......Page 148 6.5.1 The while statement......Page 149 6.5.3 The for statement......Page 150 6.5.4 The range-based for statement......Page 151 6.6.3 The return statement......Page 152 6.7 Declaration statement......Page 153 6.8 Ambiguity resolution......Page 154 7 Declarations......Page 156 7.1.1 Storage class specifiers......Page 158 7.1.2 Function specifiers......Page 160 7.1.3 The typedef specifier......Page 161 7.1.5 The constexpr specifier......Page 163 7.1.6 Type specifiers......Page 167 7.1.6.1 The cv-qualifiers......Page 168 7.1.6.2 Simple type specifiers......Page 169 7.1.6.4 auto specifier......Page 172 7.2 Enumeration declarations......Page 173 7.3.1 Namespace definition......Page 177 7.3.1.1 Unnamed namespaces......Page 178 7.3.1.2 Namespace member definitions......Page 179 7.3.2 Namespace alias......Page 180 7.3.3 The using declaration......Page 181 7.3.4 Using directive......Page 187 7.4 The asm declaration......Page 189 7.5 Linkage specifications......Page 190 7.6.1 Attribute syntax and semantics......Page 193 7.6.2 Alignment specifier......Page 194 7.6.3 Noreturn attribute......Page 195 7.6.4 Carries dependency attribute......Page 196 8 Declarators......Page 198 8.1 Type names......Page 199 8.2 Ambiguity resolution......Page 200 8.3.1 Pointers......Page 202 8.3.2 References......Page 203 8.3.3 Pointers to members......Page 205 8.3.4 Arrays......Page 206 8.3.5 Functions......Page 207 8.3.6 Default arguments......Page 211 8.4.1 In general......Page 214 8.4.2 Explicitly-defaulted functions......Page 215 8.4.3 Deleted definitions......Page 217 8.5 Initializers......Page 218 8.5.1 Aggregates......Page 221 8.5.2 Character arrays......Page 224 8.5.3 References......Page 225 8.5.4 List-initialization......Page 227 9 Classes......Page 232 9.1 Class names......Page 234 9.2 Class members......Page 236 9.3 Member functions......Page 238 9.3.1 Nonstatic member functions......Page 239 9.3.2 The this pointer......Page 240 9.4 Static members......Page 241 9.4.2 Static data members......Page 242 9.5 Unions......Page 243 9.7 Nested class declarations......Page 245 9.9 Nested type names......Page 247 10 Derived classes......Page 249 10.1 Multiple base classes......Page 250 10.2 Member name lookup......Page 252 10.3 Virtual functions......Page 256 10.4 Abstract classes......Page 260 11 Member access control......Page 262 11.1 Access specifiers......Page 264 11.2 Accessibility of base classes and base class members......Page 265 11.3 Friends......Page 267 11.4 Protected member access......Page 270 11.5 Access to virtual functions......Page 271 11.7 Nested classes......Page 272 12.1 Constructors......Page 273 12.2 Temporary objects......Page 276 12.3 Conversions......Page 278 12.3.2 Conversion functions......Page 279 12.4 Destructors......Page 281 12.5 Free store......Page 283 12.6.1 Explicit initialization......Page 285 12.6.2 Initializing bases and members......Page 287 12.7 Construction and destruction......Page 291 12.8 Copying and moving class objects......Page 294 12.9 Inheriting constructors......Page 302 13.1 Overloadable declarations......Page 305 13.2 Declaration matching......Page 307 13.3 Overload resolution......Page 308 13.3.1 Candidate functions and argument lists......Page 309 13.3.1.1.1 Call to named function......Page 311 13.3.1.1.2 Call to object of class type......Page 312 13.3.1.2 Operators in expressions......Page 313 13.3.1.5 Initialization by conversion function......Page 315 13.3.2 Viable functions......Page 316 13.3.3 Best viable function......Page 317 13.3.3.1 Implicit conversion sequences......Page 319 13.3.3.1.2 User-defined conversion sequences......Page 320 13.3.3.1.4 Reference binding......Page 321 13.3.3.1.5 List-initialization sequence......Page 322 13.3.3.2 Ranking implicit conversion sequences......Page 324 13.4 Address of overloaded function......Page 327 13.5 Overloaded operators......Page 329 13.5.3 Assignment......Page 330 13.5.6 Class member access......Page 331 13.5.8 User-defined literals......Page 332 13.6 Built-in operators......Page 333 14 Templates......Page 337 14.1 Template parameters......Page 338 14.2 Names of template specializations......Page 341 14.3 Template arguments......Page 343 14.3.1 Template type arguments......Page 345 14.3.2 Template non-type arguments......Page 346 14.3.3 Template template arguments......Page 348 14.4 Type equivalence......Page 349 14.5.1 Class templates......Page 350 14.5.1.1 Member functions of class templates......Page 351 14.5.1.3 Static data members of class templates......Page 352 14.5.2 Member templates......Page 353 14.5.3 Variadic templates......Page 355 14.5.4 Friends......Page 357 14.5.5 Class template partial specializations......Page 359 14.5.5.2 Partial ordering of class template specializations......Page 361 14.5.5.3 Members of class template specializations......Page 362 14.5.6.1 Function template overloading......Page 363 14.5.6.2 Partial ordering of function templates......Page 365 14.5.7 Alias templates......Page 367 14.6 Name resolution......Page 368 14.6.1 Locally declared names......Page 371 14.6.2 Dependent names......Page 374 14.6.2.1 Dependent types......Page 375 14.6.2.2 Type-dependent expressions......Page 378 14.6.2.3 Value-dependent expressions......Page 379 14.6.4.1 Point of instantiation......Page 380 14.6.5 Friend names declared within a class template......Page 381 14.7 Template instantiation and specialization......Page 382 14.7.1 Implicit instantiation......Page 383 14.7.2 Explicit instantiation......Page 386 14.7.3 Explicit specialization......Page 389 14.8 Function template specializations......Page 394 14.8.1 Explicit template argument specification......Page 395 14.8.2 Template argument deduction......Page 397 14.8.2.1 Deducing template arguments from a function call......Page 401 14.8.2.3 Deducing conversion function template arguments......Page 404 14.8.2.4 Deducing template arguments during partial ordering......Page 405 14.8.2.5 Deducing template arguments from a type......Page 406 14.8.3 Overload resolution......Page 413 15 Exception handling......Page 416 15.1 Throwing an exception......Page 417 15.3 Handling an exception......Page 419 15.4 Exception specifications......Page 421 15.5.1 The std::terminate() function......Page 425 15.5.3 The std::uncaught_exception() function......Page 426 16 Preprocessing directives......Page 427 16.1 Conditional inclusion......Page 429 16.2 Source file inclusion......Page 430 16.3 Macro replacement......Page 431 16.3.1 Argument substitution......Page 432 16.3.3 The ## operator......Page 433 16.3.5 Scope of macro definitions......Page 434 16.4 Line control......Page 436 16.8 Predefined macro names......Page 437 16.9 Pragma operator......Page 439 17.1 General......Page 440 17.3 Definitions......Page 441 17.5.1.2 Summary......Page 444 17.5.1.4 Detailed specifications......Page 445 17.5.2.1.3 Bitmask types......Page 447 17.5.2.1.4 Character sequences......Page 448 17.5.2.3 Private members......Page 449 17.6.1.2 Headers......Page 450 17.6.1.3 Freestanding implementations......Page 451 17.6.2.3 Linkage......Page 452 17.6.3.1 Template argument requirements......Page 453 17.6.3.2 Swappable requirements......Page 454 17.6.3.4 Hash requirements......Page 456 17.6.3.5 Allocator requirements......Page 457 17.6.4.2.1 Namespace std......Page 461 17.6.4.3.3 External linkage......Page 462 17.6.4.6 Replacement functions......Page 463 17.6.4.8 Other functions......Page 464 17.6.5.2 Headers......Page 465 17.6.5.5 Member functions......Page 466 17.6.5.9 Data race avoidance......Page 467 17.6.5.13 Restrictions on storage of pointers......Page 468 17.6.5.15 Moved-from state of library types......Page 469 18.2 Types......Page 470 18.3.2.1 Class template numeric_limits......Page 471 18.3.2.3 Class template numeric_limits......Page 472 18.3.2.4 numeric_limits members......Page 473 18.3.2.5 Type float_round_style......Page 477 18.3.2.7 numeric_limits specializations......Page 478 18.4.1 Header synopsis......Page 480 18.5 Start and termination......Page 481 18.6 Dynamic memory management......Page 483 18.6.1.1 Single-object forms......Page 484 18.6.1.2 Array forms......Page 485 18.6.1.3 Placement forms......Page 486 18.6.2.1 Class bad_alloc......Page 487 18.6.2.5 get_new_handler......Page 488 18.7.1 Class type_info......Page 489 18.7.3 Class bad_typeid......Page 490 18.8.1 Class exception......Page 491 18.8.2 Class bad_exception......Page 492 18.8.3.4 terminate......Page 493 18.8.5 Exception propagation......Page 494 18.8.6 nested_exception......Page 495 18.9.2 Initializer list access......Page 496 18.10 Other runtime support......Page 497 19.2.1 Class logic_error......Page 500 19.2.3 Class invalid_argument......Page 501 19.2.5 Class out_of_range......Page 502 19.2.8 Class overflow_error......Page 503 19.3 Assertions......Page 504 19.5 System error support......Page 505 19.5.1.1 Class error_category overview......Page 507 19.5.1.3 Class error_category non-virtual members......Page 508 19.5.2.1 Class error_code overview......Page 509 19.5.2.2 Class error_code constructors......Page 510 19.5.2.5 Class error_code non-member functions......Page 511 19.5.3.2 Class error_condition constructors......Page 512 19.5.3.5 Class error_condition non-member functions......Page 513 19.5.6.1 Class system_error overview......Page 514 19.5.6.2 Class system_error members......Page 515 20.2 Utility components......Page 516 20.2.2 swap......Page 518 20.2.3 forward/move helpers......Page 519 20.3.2 Class template pair......Page 520 20.3.3 Specialized algorithms......Page 523 20.4.1 In general......Page 524 20.4.2 Class template tuple......Page 526 20.4.2.1 Construction......Page 527 20.4.2.2 Assignment......Page 529 20.4.2.4 Tuple creation functions......Page 530 20.4.2.5 Tuple helper classes......Page 531 20.4.2.6 Element access......Page 532 20.4.2.8 Tuple traits......Page 533 20.5 Class template bitset......Page 534 20.5.1 bitset constructors......Page 536 20.5.2 bitset members......Page 537 20.5.4 bitset operators......Page 540 20.6.2 Header synopsis......Page 541 20.6.3.1 Pointer traits member types......Page 545 20.6.4 Pointer safety......Page 546 20.6.5 Align......Page 547 20.6.8 Allocator traits......Page 548 20.6.8.1 Allocator traits member types......Page 549 20.6.8.2 Allocator traits static member functions......Page 550 20.6.9 The default allocator......Page 551 20.6.9.2 allocator globals......Page 552 20.6.11 Temporary buffers......Page 553 20.6.12.3 uninitialized_fill......Page 554 20.6.13 C library......Page 555 20.7.1 Class template unique_ptr......Page 556 20.7.1.1.2 default_delete......Page 557 20.7.1.2 unique_ptr for single objects......Page 558 20.7.1.2.1 unique_ptr constructors......Page 559 20.7.1.2.2 unique_ptr destructor......Page 561 20.7.1.2.4 unique_ptr observers......Page 562 20.7.1.3 unique_ptr for array objects with a runtime length......Page 563 20.7.1.3.2 unique_ptr observers......Page 564 20.7.1.4 unique_ptr specialized algorithms......Page 565 20.7.2.1 Class bad_weak_ptr......Page 566 20.7.2.2 Class template shared_ptr......Page 567 20.7.2.2.1 shared_ptr constructors......Page 569 20.7.2.2.3 shared_ptr assignment......Page 571 20.7.2.2.5 shared_ptr observers......Page 572 20.7.2.2.7 shared_ptr comparison......Page 573 20.7.2.2.9 shared_ptr casts......Page 574 20.7.2.2.11 shared_ptr I/O......Page 575 20.7.2.3.1 weak_ptr constructors......Page 576 20.7.2.3.5 weak_ptr observers......Page 577 20.7.2.4 Class template enable_shared_from_this......Page 578 20.7.2.5 shared_ptr atomic access......Page 580 20.8 Function objects......Page 582 20.8.2 Requirements......Page 586 20.8.3 Class template reference_wrapper......Page 587 20.8.3.4 reference_wrapper invocation......Page 588 20.8.4 Arithmetic operations......Page 589 20.8.5 Comparisons......Page 590 20.8.7 Bitwise operations......Page 591 20.8.8 Negators......Page 592 20.8.9.1.2 Function template bind......Page 593 20.8.9.1.3 Placeholders......Page 594 20.8.10 Function template mem_fn......Page 595 20.8.11.2 Class template function......Page 596 20.8.11.2.1 function construct/copy/destroy......Page 598 20.8.11.2.4 function invocation......Page 599 20.8.12 Class template hash......Page 600 20.9.1 Requirements......Page 601 20.9.2 Header synopsis......Page 602 20.9.4.1 Primary type categories......Page 604 20.9.4.2 Composite type traits......Page 605 20.9.4.3 Type properties......Page 606 20.9.5 Type property queries......Page 611 20.9.6 Relationships between types......Page 612 20.9.7.1 Const-volatile modifications......Page 613 20.9.7.3 Sign modifications......Page 614 20.9.7.5 Pointer modifications......Page 615 20.9.7.6 Other transformations......Page 616 20.10.2 Header synopsis......Page 618 20.10.4 Arithmetic on ratios......Page 619 20.10.5 Comparison of ratios......Page 620 20.11.2 Header synopsis......Page 621 20.11.3 Clock requirements......Page 623 20.11.4.1 treat_as_floating_point......Page 624 20.11.4.3 Specializations of common_type......Page 625 20.11.5 Class template duration......Page 626 20.11.5.1 duration constructors......Page 627 20.11.5.3 duration arithmetic......Page 628 20.11.5.5 duration non-member arithmetic......Page 629 20.11.5.6 duration comparisons......Page 630 20.11.6 Class template time_point......Page 631 20.11.6.3 time_point arithmetic......Page 632 20.11.6.6 time_point comparisons......Page 633 20.11.7.1 Class system_clock......Page 634 20.11.8 Date and time functions......Page 635 20.12.1 Header synopsis......Page 636 20.12.3 Scoped allocator adaptor constructors......Page 638 20.12.4 Scoped allocator adaptor members......Page 639 20.13.2 type_index overview......Page 641 20.13.4 Hash support......Page 642 21.2.1 Character traits requirements......Page 644 21.2.2 traits typedefs......Page 646 21.2.3.1 struct char_traits ......Page 647 21.2.3.3 struct char_traits ......Page 648 21.2.3.4 struct char_traits ......Page 649 21.3 String classes......Page 650 21.4 Class template basic_string......Page 654 21.4.2 basic_string constructors and assignment operators......Page 658 21.4.4 basic_string capacity......Page 662 21.4.5 basic_string element access......Page 663 21.4.6.2 basic_string::append......Page 664 21.4.6.3 basic_string::assign......Page 666 21.4.6.4 basic_string::insert......Page 667 21.4.6.5 basic_string::erase......Page 668 21.4.6.6 basic_string::replace......Page 669 21.4.7.2 basic_string::find......Page 671 21.4.7.4 basic_string::find_first_of......Page 672 21.4.7.6 basic_string::find_first_not_of......Page 673 21.4.7.8 basic_string::substr......Page 674 21.4.8.1 operator+......Page 675 21.4.8.3 operator!=......Page 677 21.4.8.6 operator......Page 859 24.5.1.3.10 operator-......Page 860 24.5.1.3.16 operator>......Page 861 24.5.2 Insert iterators......Page 862 24.5.2.2.3 back_insert_iterator::operator*......Page 863 24.5.2.4.2 front_insert_iterator::operator=......Page 864 24.5.2.5 Class template insert_iterator......Page 865 24.5.2.6.5 inserter......Page 866 24.5.3.1 Class template move_iterator......Page 867 24.5.3.3.2 move_iterator::operator=......Page 868 24.5.3.3.7 move_iterator::operator--......Page 869 24.5.3.3.13 move_iterator comparisons......Page 870 24.6.1 Class template istream_iterator......Page 871 24.6.1.1 istream_iterator constructors and destructor......Page 872 24.6.2 Class template ostream_iterator......Page 873 24.6.2.2 ostream_iterator operations......Page 874 24.6.3.1 Class template istreambuf_iterator::proxy......Page 875 24.6.3.5 istreambuf_iterator::equal......Page 876 24.6.4.1 ostreambuf_iterator constructors......Page 877 24.6.5 range access......Page 878 25.1 General......Page 879 25.2.1 All of......Page 889 25.2.5 Find......Page 890 25.2.8 Adjacent find......Page 891 25.2.11 Equal......Page 892 25.2.13 Search......Page 893 25.3.1 Copy......Page 894 25.3.2 Move......Page 895 25.3.4 Transform......Page 896 25.3.6 Fill......Page 897 25.3.8 Remove......Page 898 25.3.9 Unique......Page 899 25.3.11 Rotate......Page 900 25.3.13 Partitions......Page 901 25.4.1.1 sort......Page 903 25.4.1.4 partial_sort_copy......Page 904 25.4.2 Nth element......Page 905 25.4.3.2 upper_bound......Page 906 25.4.3.4 binary_search......Page 907 25.4.4 Merge......Page 908 25.4.5.3 set_intersection......Page 909 25.4.5.4 set_difference......Page 910 25.4.6.1 push_heap......Page 911 25.4.6.4 sort_heap......Page 912 25.4.7 Minimum and maximum......Page 913 25.4.9 Permutation generators......Page 915 25.5 C library algorithms......Page 916 26.2 Numeric type requirements......Page 918 26.3.1 Header synopsis......Page 919 26.4.1 Header synopsis......Page 920 26.4.2 Class template complex......Page 922 26.4.3 complex specializations......Page 923 26.4.5 complex member operators......Page 924 26.4.6 complex non-member operations......Page 925 26.4.7 complex value operations......Page 927 26.4.8 complex transcendentals......Page 928 26.4.9 Additional overloads......Page 929 26.5.1.1 General requirements......Page 930 26.5.1.2 Seed sequence requirements......Page 931 26.5.1.3 Uniform random number generator requirements......Page 932 26.5.1.4 Random number engine requirements......Page 933 26.5.1.5 Random number engine adaptor requirements......Page 935 26.5.1.6 Random number distribution requirements......Page 936 26.5.2 Header synopsis......Page 939 26.5.3 Random number engine class templates......Page 941 26.5.3.1 Class template linear_congruential_engine......Page 942 26.5.3.2 Class template mersenne_twister_engine......Page 943 26.5.3.3 Class template subtract_with_carry_engine......Page 944 26.5.4.2 Class template discard_block_engine......Page 946 26.5.4.3 Class template independent_bits_engine......Page 947 26.5.4.4 Class template shuffle_order_engine......Page 948 26.5.5 Engines and engine adaptors with predefined parameters......Page 949 26.5.6 Class random_device......Page 951 26.5.7.1 Class seed_seq......Page 952 26.5.8.2.1 Class template uniform_int_distribution......Page 954 26.5.8.2.2 Class template uniform_real_distribution......Page 955 26.5.8.3.1 Class bernoulli_distribution......Page 956 26.5.8.3.2 Class template binomial_distribution......Page 957 26.5.8.3.3 Class template geometric_distribution......Page 958 26.5.8.3.4 Class template negative_binomial_distribution......Page 959 26.5.8.4.1 Class template poisson_distribution......Page 960 26.5.8.4.3 Class template gamma_distribution......Page 961 26.5.8.4.4 Class template weibull_distribution......Page 962 26.5.8.4.5 Class template extreme_value_distribution......Page 963 26.5.8.5.1 Class template normal_distribution......Page 964 26.5.8.5.2 Class template lognormal_distribution......Page 965 26.5.8.5.3 Class template chi_squared_distribution......Page 966 26.5.8.5.4 Class template cauchy_distribution......Page 967 26.5.8.5.5 Class template fisher_f_distribution......Page 968 26.5.8.5.6 Class template student_t_distribution......Page 969 26.5.8.6.1 Class template discrete_distribution......Page 970 26.5.8.6.2 Class template piecewise_constant_distribution......Page 971 26.5.8.6.3 Class template piecewise_linear_distribution......Page 973 26.6.1 Header synopsis......Page 975 26.6.2.1 Class template valarray overview......Page 977 26.6.2.2 valarray constructors......Page 979 26.6.2.3 valarray assignment......Page 980 26.6.2.4 valarray element access......Page 981 26.6.2.5 valarray subset operations......Page 982 26.6.2.6 valarray unary operators......Page 983 26.6.2.7 valarray computed assignment......Page 984 26.6.2.8 valarray member functions......Page 985 26.6.3.1 valarray binary operators......Page 986 26.6.3.2 valarray logical operators......Page 987 26.6.4.1 Class slice overview......Page 988 26.6.5.1 Class template slice_array overview......Page 989 26.6.6.1 The gslice class overview......Page 990 26.6.7.1 Class template gslice_array overview......Page 992 26.6.7.4 gslice_array fill function......Page 993 26.6.8.3 mask_array computed assignment......Page 994 26.6.9.2 indirect_array assignment......Page 995 26.6.10 valarray range access......Page 996 26.7.1 Header synopsis......Page 997 26.7.4 Partial sum......Page 998 26.7.6 Iota......Page 999 26.8 C library......Page 1000 27.1 General......Page 1005 27.3 Forward declarations......Page 1006 27.4.1 Overview......Page 1008 27.4.2 Narrow stream objects......Page 1009 27.5.1 Overview......Page 1010 27.5.2 Types......Page 1011 27.5.3 Class ios_base......Page 1012 27.5.3.1.2 Type ios_base::fmtflags......Page 1014 27.5.3.1.4 Type ios_base::openmode......Page 1015 27.5.3.1.6 Class ios_base::Init......Page 1016 27.5.3.3 ios_base functions......Page 1017 27.5.3.5 ios_base storage functions......Page 1018 27.5.3.7 ios_base constructors/destructor......Page 1019 27.5.4.2 fpos requirements......Page 1020 27.5.5.1 Overview......Page 1021 27.5.5.3 Member functions......Page 1022 27.5.5.4 basic_ios flags functions......Page 1025 27.5.6.1 fmtflags manipulators......Page 1026 27.5.6.3 basefield manipulators......Page 1027 27.5.6.5 Error reporting......Page 1028 27.6.2 Stream buffer requirements......Page 1029 27.6.3 Class template basic_streambuf ......Page 1030 27.6.3.2.1 Locales......Page 1032 27.6.3.2.4 Putback......Page 1033 27.6.3.3.2 Get area access......Page 1034 27.6.3.4.2 Buffer management and positioning......Page 1035 27.6.3.4.3 Get area......Page 1036 27.6.3.4.4 Putback......Page 1037 27.6.3.4.5 Put area......Page 1038 27.7.1 Overview......Page 1039 27.7.2.1 Class template basic_istream......Page 1040 27.7.2.1.2 Class basic_istream assign and swap......Page 1042 27.7.2.1.3 Class basic_istream
دانلود کتاب Information technology - Programming languages - C++