Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Software Development Tools No-Code Development
Business
Entrepreneurship Communication Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certifications Network & Security Hardware Operating Systems & Servers Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Paid Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement & Gardening Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition & Diet Yoga Mental Health Martial Arts & Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Learning Teacher Training Test Prep Other Teaching & Academics
Web Development JavaScript React Angular CSS Node.Js PHP HTML5 Vue JS
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Amazon AWS Cisco CCNA Microsoft AZ-900 AWS Certified Developer - Associate
Microsoft Power BI SQL Tableau Data Modeling Business Analysis Business Intelligence MySQL Qlik Sense Blockchain
Unity Unreal Engine Game Development Fundamentals C# 3D Game Development C++ Unreal Engine Blueprints 2D Game Development Virtual Reality
Google Flutter Android Development iOS Development React Native Swift Dart (programming language) Mobile App Development Kotlin SwiftUI
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting Canva InDesign Character Design Procreate Digital Illustration App
Life Coach Training Neuro-Linguistic Programming Personal Development Personal Transformation Life Purpose Mindfulness Meditation Sound Therapy CBT Cognitive Behavioral Therapy
Entrepreneurship Fundamentals Business Fundamentals Freelancing Business Strategy Startup Business Plan Online Business Blogging Home Business
Digital Marketing Social Media Marketing Marketing Strategy Internet Marketing Google Analytics Copywriting Email Marketing YouTube Marketing Podcasting

DevelopmentSoftware EngineeringC++

Professional C++ - Object-Oriented C++ Programming Course

Beyond the Basics - Learn C++ Programming with Hands-On and Expert Instruction, Design Principles and Patterns
Rating: 4.1 out of 54.1 (12 ratings)
118 students
Created by Chuck McCullough
Last updated 9/2021
English
English [Auto]

What you'll learn

  • Modern, Object-Oriented C++ Programming
  • C++ 11, 14, & 17 Features
  • Lambda Expressions & Functional Programming
  • Test Driven Development
  • Inheritance, Polymorphism, Interfaces - Good Design Technique
  • Containers & Algorithms

Requirements

  • Basic C or C++ programming

Description

Professional C++ - Object-Oriented C++ Programming is our intermediate C++ course.  If you have completed our introduction to C++ course or have experience with C, Java, C#, or other curly brace language, this course is for you!

Why choose this course?  Chuck's courses have been delivered to thousands of developers in-person, online and via Udemy, including  major corporations, government agencies and military around the world.

Using lots of code examples and hands-on opportunities, Chuck guides you through all of the object-oriented programming features of C++, including new features introduced in C++ 11, C++ 14, and C++ 17.  You will not only learn syntax and features, but also how to properly apply those concepts.  Chuck intertwines design principles and concepts throughout the course to explain the best practices for applying what you learn.

In this course, you will learn

  • Class implementation, including inline, const, constructors & destructors, and code organization

  • Learn to implement code from Test Driven Development unit test specifications

  • Memory management, including pointers, references, move & copy constructors

  • Exceptions - all about error handling including exception strategies

  • Operator Overloading - learn all about required and optional operator implementation

  • Templates - learn to use and create your own function templates and class templates, including new variadic templates and parameter folding

  • Smart Pointers - Avoid memory leaks and learn to build safe applications using the RAII strategy with unique pointers, shared pointers and weak pointers

  • Inheritance - Learn to properly achieve good inheritance relationships and leverage this powerful object-oriented concept including overriding functions, construction & destruction

  • Polymorphism - Become an expert at leveraging polymorphism to eliminate design smells and understand the costs and benefits of polymorphism

  • Interfaces - You will understand the meaning and purpose of interfaces in a great design, including interface segregation and dependency inversion

  • Functional Programming - Learn all the new features of C++ supporting functional programming and Inversion of Control

  • Lambda Expressions - Gain expertise not only in lambda syntax, but also how and when to use lambdas in your application.

  • Containers - Get an overview of the standard library containers (STL) and learn the best strategies for choosing and leveraging containers.  This section includes new features like ranged for, algorithms and numeric functional features in modern C++.

  • Library Utilities - You will learn all about utilities classes and functions in C++ like tuples, pairs, date &  time

  • Design Patterns - throughout the class, Chuck demonstrates the implementation of GOF design patterns

At the conclusion of this course, programmers will be ready to contribute to C++ projects in a meaningful way, armed with an in-depth understanding of object-oriented programming and the nuances of C++


Who this course is for:

  • Beginner C/C++ programmers wanting to learn more
  • Java developers wanting to learn C++
  • C# developers wanting to learn C++

Instructor

Chuck McCullough
Software Engineer
Chuck McCullough
  • 4.2 Instructor Rating
  • 151 Reviews
  • 1,262 Students
  • 7 Courses

Chuck is a professional software developer with over 30 years of experience.  He began his career developing C applications for a large client in the financial industry.

In 1989, Chuck joined IBM developing and testing APIs for a large project.  Most of this work was in C++.

In 1992, Chuck started McCullough & Associates, a professional services and training organization. Since then, M&A has provided development and training services to companies, governments, and universities around the world.

As a software architect, Chuck is proficient in Java, C#, C++ and many other languages and platforms.  He is a strong practitioner of best practices, such as test-driven, iterative, pattern rich object-oriented application development.

Chuck has trained thousands of developers all over the world.

Top companies choose Udemy Business to build in-demand career skills.
NasdaqVolkswagenBoxNetAppEventbrite
  • Udemy Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Investors
  • Impressum Kontakt
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Accessibility statement
Udemy
© 2022 Udemy, Inc.