|
You are here |
hackingcpp.com | ||
| | | | |
quuxplusone.github.io
|
|
| | | | | Back in early March, Lukas Böger asked on StackOverflow: "Where do standard library or compilers leverage noexcept move semantics (other than vector growth)?" So I got nerdsniped into looking at all the places libc++ tests the noexceptness of any user-defined operation. This circuitously led to my finding an absolutely massive number of corner-case bugs in libc++'s string::append member function. | |
| | | | |
www.cppstories.com
|
|
| | | | | When you see an article about new C++ features, most of the time you'll have a description of major elements. Looking at C++17, there are a lot of posts (including articles from this blog) about structured bindings, filesystem, parallel algorithms, if constexpr, std::optional, std::variant... and other prominent C++17 additions. But how about some smaller parts? | |
| | | | |
entangledlogs.com
|
|
| | | | | Generic Programming: Generating part of programs Introduction Generic Programming: Programming with generic parameters to avoid unnecessary code duplication and encourage code reuse. Polymorphism is also another technique to solve code reuse Puts implicit constraints on the generic types that are to be fulfilled by concrete types. template T adder(T LHS, T RHS) { return LHS + RHS; } struct Foo { inv Val = 0; } Foo f = adder(Foo{}, Foo{}): In this code snippet, we assume that Foo meets the requirement tha... | |
| | | | |
www.echo3d.com
|
|
| | | The gaming industry is a powerhouse of creativity and innovation, fueled by the creation of stunning 3D worlds and characters. Learn how to manage the vast amounts of 3D assets with a robust 3D Digital Asset Management (3D DAM) platform like echo3D. | ||