Git Product home page Git Product logo

mastering-cpp-programming's Introduction

Mastering C++ Programming

This is the code repository for Mastering C++ Programming, published by Packt. It contains all the supporting project files necessary to work through the book from start to finish.

About the Book

C++ has come a long way and has now been adopted in several contexts. Its key strengths are its software infrastructure and resource-constrained applications. The C++ 17 release will change the way developers write code, and this book will help you master your developing skills with C++. With real-world, practical examples explaining each concept, the book will begin by introducing you to the latest features in C++ 17. It encourages clean code practices in C++ in general, and demonstrates the GUI app-development options in C++. You’ll get tips on avoiding memory leaks using smart-pointers. Next, you’ll see how multi-threaded programming can help you achieve concurrency in your applications. Moving on, you’ll get an in-depth understanding of the C++ Standard Template Library. We show you the concepts of implementing TDD and BDD in your C++ programs, and explore template-based generic programming, giving you the expertise to build powerful applications. Finally, we’ll round up with debugging techniques and best practices.By the end of the book, you’ll have an in-depth understanding of the language and its various facets.

Instructions and Navigation

All of the code is organized into folders. Each folder starts with a number followed by the application name. For example, Chapter02.

The code will look like the following:

#include <iostream>
#include <thread>
#include <mutex>
#include "Account.h"
using namespace std;
enum ThreadType {
  DEPOSITOR,
  WITHDRAWER
};
mutex locker;

You will need to be equipped with the following tools before you get started with the book: g++ compiler of version 5.4.0 20160609 or above GDB 7.11.1 Valgrind 3.11.0 Cucumber-cpp Git 2.7.4 Google test framework (gtest 1.6 or later) CMake 3.5.1 Ruby 2.5.1 Qt 5.7.0 Bundler v 1.14.6 The OS required is Ubuntu 16.04 64-bit or later. The hardware configuration should at least be of 1 GB RAM and 20 GB disk space. A virtual machine with this configuration should also suffice.

Related Products

mastering-cpp-programming's People

Contributors

madhunikitac avatar ibiscum avatar packt-itservice avatar packtutkarshr avatar dominicpereira92 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.