Last Update:
C++17 In Detail Book!
Table of Contents
I’m happy to present my first ebook on C++!
Here’s the short story and the description of what you can find inside.
The Story
At the beginning of 2017, I decided to make a super long, collaborative, post about all the new things that are coming with C++17. At that time we had quite “stable” drafts, so most of the new features were already known.
Here’s the link to that long post:
C++ 17 Features - January 2017.
Having looked into the features, I got more and more curious about the details…
That’s why in the middle of 2017 I started with the article series about C++17. Every second Monday I published a new article about language features, fixes, STL changes, new libraries. In total, I wrote 9 articles, and you can find the summary in the last post:
C++17 in detail: Summary & Bonus
- September 2017.
As you can see at that time, I came up with this title “C++17 in detail”. For most of the time I’ve even made a grammar mistake, as it was called “in details”.
The final result of the first series about C++17 was a little ebook called “C++17 in detail” - it was just a compilation of all of the available articles. It consists of around 50 pages. You can get it for free if you sign up to my mailing list.
After the series, I still wrote about the new features, but maybe in a less structured way.
Long story short, but during the late Winter 2017, I was thinking what to do next with the blog. I liked writing about new C++ features - doing investigations, reading papers and the drafts of the standard. Also, I got this idea that since I have a book - this little freely available PDF - maybe I could somehow extend it and make it a real book?
All in all, I came up with the second series on C++17: this time I
focused more on the Library changes. The series started with exploring
optional
and new vocabulary types
(any
,
variant
), and now I
describe some things related to
string_view
.
The second series pushed the idea of the more comprehensive book. I added the new articles into the book, and at some point, it got more than 100 pages!
In between, I discussed the idea with Jacek Galowicz, and I got huge support from him!
Since July I got this crazy idea that I should finalise the book and make it available on 10th August!
The date is not random as today is my 2^5
birthday!
I knew that I wouldn’t be able to finish everything on time - as writing a book is a very extensive project - but I was also aware that near that deadline the book would have a real value to my readers. Leanpub allows me to publish a not complete book and then provide free updates for the readers.
So here it is! C++17 In Detail!
The Book
The book is around 90% ready and contains over 200 pages. It filled with exclusive content about C++17 features.
I spent hundreds of hours investigating how the new things work in order to make a nice and practical book for you. The book will not only save your time but also will guide you through all the nuances of the language.
This book is intended for all C++ developers who have at least basic experience with C++11/14.
The principal aim of the book is to make you equipped with practical knowledge about C++17. After reading the book, you’ll be able to move past C++11 and C++14 and leverage the latest C++ techniques in your day to day tasks.
Please don’t worry if you’re not an expert in C++11/14. The book will give you necessary background, so you’ll get the information in a proper context.
Here’s the basic overview of the content:
Part One: C++17 Language features
- Fixes and deprecation
- Language clarification
- General language features
- Templates
- Attributes
Part Two: C++17 The Standard Library
std::optional
std::variant
std::any
std::string_view
- String operations
- Filesystem
- Parallel STL
- Other Changes
Part Three: More Examples and Use Cases
- Refactoring with
std::optional
- Using
if constexpr
- …
- and more planned
The book is self-published @leanpub.
You can order it from this site.
C++17 In Detail with 45-day 100% Happiness Guarantee.
The Plans
I got a lot of feedback from early relievers, and I couldn’t fix every issue. That’s why I’ll provide an update very soon - probably next week! Then, after the smaller fixes, I’ll return to the core parts: rewriting and updating the chapters. The final version should have around 250 pages.
Plans for the final version:
- Add chapter about string operations
- Update chapter about Parallel STL
- Update and rewrite section about filesystem
- Add more examples to the third part
- More polishing across the whole book
The book should be 100% ready in a few months, Autumn 2018.
Updates
- 31st August, more details in this blog post: The First Book Update.
Acknowledgement
Special thanks to all of the people who helped me with the book!
Especially
- Jacek Galowicz - @jgalowicz
- Patrice Roy - PatriceRoy1
- Jonathan Boccara - fluentcpp.com
- Łukasz Rachwalski
- Michał Czaja
- Arne Mertz - Simplify C++
- JFT
- Victor Ciura @ciura_victor
- Karol Gasiński @karolgasinski
- Marco Arena Growing up blog
- Andrzej Krzemienski - Andrzej’s C++ blog
Giveaway
The giveaway has ended. Stay tuned for new promotions!
I have 5 free copies for you!
All you have to do is to write a comment about your favourite feature from C++17 and how you use it
.
And also, make sure you’re on my mailing list, so I can contact you.
The giveaway starts today, and it will last only one week. Next Friday (1pm Warsaw/PL Time) I’ll contact the 5 randomly selected winners, and they’ll get a 100% discount coupon for the book.
Summary
The whole book editing and publish process is a super exciting experience!
It’s a pleasure for me to write about new and fascinating things in the language and I hope you’ll have fun discovering C++17 as well: through the book and the blog.
Have a look at the book here: C++17 In Detail.
And here’s the separate page of the book:
cppindetail.com with samples and full description
I've prepared a valuable bonus for you!
Learn all major features of recent C++ Standards on my Reference Cards!
Check it out here: