Is std::function really the best we can do? - Lukas Bergdoll
Is a better std::function possible?
Is std::function really the best we can do?
by Lukas Bergdoll
June 16-21, Sofia, Bulgaria
September 13-19, Aurora, CO, USA
October 25, Pavia, Italy
November 6-8, Berlin, Germany
November 3-8, Kona, HI, USA
By Meeting C++ | Jan 26, 2018 02:45 AM | Tags: stl performance meetingcpp intermediate functional c++14 c++11
Is a better std::function possible?
Is std::function really the best we can do?
by Lukas Bergdoll
By shreck | Jan 26, 2018 12:48 AM | Tags: None
Abseil's C++ Tips of the Week for January 26th
Abseil's String Utility APIs
by Tom Manshreck, Abseil Tech Writer
About the article:
Abseil provides many important string utilities such as
StrCat()
,StrSplit()
andStrJoin()
. Read the tips that introduced these APIs at Google and explain how to use them now at https://abseil.io/tips/3 https://abseil.io/tips/10 , https://abseil.io/tips/36 and https://abseil.io/tips/59.
By Meeting C++ | Jan 25, 2018 03:20 AM | Tags: performance parallelism multithreading meetingcpp concurrency boost
This talk is about a new future, used in Sean Parents Concurrency library
There is a new future
by Felix Petriconi
By Adrien Hamelin | Jan 24, 2018 06:38 PM | Tags: c++17 basics
Small reminder:
C++17: Initializers for if & switch statements
by Marc Gregoire
From the article:
Two small, but very useful C++17 features are initializers for if and switch statements. These can be used to prevent polluting the enclosing scope with variables that should only be scoped to the if and switch statement. The for statement already supports such initializers since the beginning...
By Adrien Hamelin | Jan 24, 2018 06:34 PM | Tags: basics
Quick A: This is not a valid statement.
Recently on SO:
Is (4 > y > 1) a valid statement in C++? How do you evaluate it if so?
The statement (4 > y > 1) is parsed as this:
((4 > y) > 1)The comparison operators < and > evaluate left-to-right.
The 4 > y returns either 0 or 1 depending on if it's true or not.
Then the result is compared to 1.
In this case, since 0 or 1 is never more than 1, the whole statement will always return false.
By Jason Turner | Jan 24, 2018 09:04 AM | Tags: intermediate c++20
Episode 99 of C++ Weekly.
C++ 20's Default Bit-field Member Initializers
by Jason Turner
About the show:
Jason introduces one of the first accepted features for C++20 (aka C++2a, but probably will become C++20) that also has compiler support.
By Meeting C++ | Jan 24, 2018 02:03 AM | Tags: strong types meetingcpp intermediate basics
A talk on Strong Types from Meeting C++ 2017!
Strong types for strong interfaces
by Jonathan Boccara
By Meeting C++ | Jan 23, 2018 02:26 AM | Tags: tools performance meetingcpp hpc efficiency advanced
A new video from Meeting C++ 2017:
The performance Addict's Toolbox
by Peter Steinbach
By Marco Arena | Jan 22, 2018 09:47 AM | Tags: visual studio basics
Visual Studio 2017 15.6 Preview 2 includes a set of updates to the C++ Core Guidelines Check extension:
C++ Core Check in Visual Studio 2017 15.6 Preview 2
by Sergiy Oryekhov
From the article:
We added more checks to help with the effort of making code cleaner, more secure and maintainable. This document is a quick overview of the new rules...
By don_tait | Jan 22, 2018 06:38 AM | Tags: c++17 c++14 c++11
Seats are still available for KDAB's 3-day training, February 12th, Berlin:
Modern C++: C++11 / C++14 / C++17
by Don Tait
About the training:
Learn the relevant library and language changes
In this hands-on C++11, C++14 and C++17 training for C++ developers, you'll learn about the language changes and the standard library changes introduced in C++11, C++14 as well as changes from C++17.
During the class, the new standards will be demonstrated aided by many examples and you'll get the opportunity to use them right away in our lab projects.
Course contents:
Important language changes, including:
- C++11/14: lambdas, range based for loops, strongly typed enums,
- C++11/14: constexpr, uniform initialization, move semantics, …
- C++17: improved lambdas, structured bindings, constexpr if, …
- C++11/14: Functional programming, including lambda, bind and function objects
- C++11/14: Template meta programming, including variadic templates and perfect forwarding
- C++11/14: Multithreading (including the C++11 memory model, std::thread, std::async, …)
- C++17: Templates: Fold Expressions, Class template deduction, …