Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
Compare
Choose a tag to compare
Loading
@federico-busatofederico-busato released this 08 Nov 06:00
· 73 commits to master since this release

The soul of this release is the full refactoring and updating of the "Code Conventions" chapter:

  • All code conventions have been reviewed again, adding missing items and improving the organization of the existing ones
  • "Core C+"+ code convention has been fully added
  • Mentioned code convention tools likeclang-tidy
  • All bullet points now have links to the official convention descriptions
  • The chapter has been split into two lectures and organized into several subsections to improve the readability

Introduction:

  • Updated main charts: "C++ popularity" and "compute-trend"

Preparation:

  • Books updated: "Professional C++", "Programming and Principles using C++"

Basic Concepts II:

  • Improved "Integral data type" section: description ofptrdiff_t, addeduintptr_t, added hardware relation with integral arithmetic
  • Added saturation arithmetic functions C++26 for integral data types
  • Improved signed integer and bitwise operations description

Basic Concepts III:

  • Added C++ attributes section
  • Moved "namespace" section here and added improvements: using namespace, using declaration in details
  • Added alternative syntax for namespace
  • Added an example of "using enum" pre-C++20

Basic Concepts IV:

  • Fixed "constexpr Function - Limitations" and minor section improvements
  • Described the relation betweenconstexpr function and argument lifetime
  • Better explanation and more examples forstatic_cast,reinterpret_cast,const_cast,bit_cast
  • Addednarrow_cast and "uniform initialization cast"
  • Mentioned the behavior ofauto within structures
  • Mentioned the behavior ofconstexpr and structure binding
  • Describedvolatile deprecation in C++20
  • Moved pointer description before "Heap and Stack"
  • Added C++23 type safe placement allocation function

Basic Concepts V:

  • Added "Boost Predef" library reference for common macros
  • Added template lambda emulation
  • Added an example of template lambda without automatic deduction
  • Added the relation between lambda expression and function
  • Described recursive lambda and lambda within another lambda
  • Added C++23 lambda expressions with optional parameters
  • Reported GCC 14 flag-fdiagnostics-all-candidates

Object-Oriented Programming II:

  • Improved Polymorphism introduction and added "C++ Mechanisms for Polymorphism"

Template and Metaprogramming II:

  • Added-Wfatal-errors to "Template Debugging" section

Translation Units II:

  • Improved C++ libraries section. Clarified building steps, environment variables, usage, and ABI
  • Small improvements in the "compiling multiple translation units" section

Debugging:

  • AddedBoost::Assert andBoost::stacktrace to assertion section
  • AddedGWPSan Sampling-based Sanitizer
  • Added additional compiler flags to help debugging

Ecosystem:

  • Updated the "AI-Powered Code Completion" tools
  • Books updated

Utilities:

  • Added a section for random number generator for "Recent Algorithms and Performance"
  • Improved the seed generation section

Advanced Topics I:

  • Fixed type deduction example for array

Optimization I:

  • Added new references in the "Introduction" section
  • Improved "Arithmetic Intensity" section

Optimization II:

  • Added a few notes about loop optimization
  • Improved memory alignment section and added C++20std::assume_aligned
  • Fixed C++17 alignment function and added an example
  • Updatedpragma unroll compiler support
  • Added a new reference for hash table comparison
  • Added MSVCforceinline attribute and adopted C++11 syntax

Optimization III:

  • Added official link to LLVM Bolt project and a new benchmark
  • Added a benchmark for "Polyhedral Optimizations"
  • Added-fprefetch-loop-arrays optimization flag
  • Added userspace governor setting for cpu frequency
  • Added "Hash-prospector" as replacement for PRNG
  • Added optimized linear and binary search in "External libraries" section
  • Addedtarget andtarget_clones function attributes

Software Design I:

  • Refactored "Member Functions vs. Free Functions" -> "Class Design"

Thanks for all feedback and contributions:@FisherKKK,@JDRanpariya,@YueLu0116,@luck-tian,@D4arkShad0w,@DYNIO1999,@saveasguy,@leofracca,@Dong-kyu-Lee,@ChoiSeonMun,@viktorteren,@ChoiSeonMun,@Mati-as,@RuimingShen,@abzrg,@xintin,@russkel,@binary-manu

Contributors

  • @russkel
  • @luck-tian
  • @viktorteren
  • @ChoiSeonMun
  • @DYNIO1999
  • @leofracca
  • @YueLu0116
  • @binary-manu
  • @xintin
  • @FisherKKK
  • @JDRanpariya
  • @saveasguy
  • @abzrg
  • @Dong-kyu-Lee
  • @D4arkShad0w
  • @Mati-as
  • @RuimingShen
russkel, luck-tian, and 15 other contributors
Assets2
Loading
viachaslavic, zencatalyst, K486D2, Sarthak950, guilhermecadori, x0apr, cagrikymk, danialhaghmoradi, and abzrg reacted with thumbs up emojiameaninglessname, usainzg, lmapii, laicasaane, and danialhaghmoradi reacted with hooray emojiameaninglessname, hammaad2002, arjunskumar, d-krupke, Puiching-Memory, teella, guptaaryan16, acisternino, laicasaane, and x0apr reacted with heart emoji
20 people reacted

[8]ページ先頭

©2009-2025 Movatter.jp