We may earn an affiliate commission when you visit our partners.
Kate Gregory

You know C++ syntax, but do you know what makes code "modern"? How much do you use the Standard Library in your applications? Have you been keeping up with what was added in C++ 11, 14, and 17? Bring your C++ skills to the next level.

Read more

You know C++ syntax, but do you know what makes code "modern"? How much do you use the Standard Library in your applications? Have you been keeping up with what was added in C++ 11, 14, and 17? Bring your C++ skills to the next level.

Do you want to take your C++ skills from basic syntax to the next level, including libraries and modern C++? In this course, C++ 17: Beyond the Basics, you'll learn what modern C++ is, and why it's to your advantage to write that way. First, you'll learn about the Standard Library collection classes, and some of the functions in the algorithm header that will save you time and effort while making your code easier for others to understand. Next, you'll discover lambdas and how to use them, and how to take advantage of move semantics for a tremendous performance enhancement. Finally, you'll see what exceptions are, when to use them and when not to use them, and how they work. By the end of this course, you'll have built a fundamental knowledge of C++ syntax, fill in the gaps most C++ developers have, and become one of those developers who uses the whole language to get the most performance while still writing code that's easy to maintain and read.

Enroll now

What's inside

Syllabus

Course Overview
Modern C++
Standard Library Containers
Lambdas
Read more
Standard Library Algorithms
Move Semantics
Exceptions

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Explores advanced concepts, including lambdas and move semantics, helping learners develop strong coding practices
Taught by Kate Gregory, a recognized expert in C++ development
Provides a comprehensive overview of modern C++ features, including the Standard Library and its algorithms
Focuses on practical applications, equipping learners with skills to enhance performance and code readability
Requires prior knowledge of C++ basics, making it suitable for learners with some experience
May require additional learning resources for learners seeking a more in-depth understanding of specific topics

Save this course

Save C++ 17: Beyond the Basics to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in C++ 17: Beyond the Basics with these activities:
Effective C++: 55 Specific Ways to Improve Your Programs and Designs
Reviewing this text will help you maximize your effectiveness at programming with C++ and will help you deepen your understanding of the topics covered in this course.
Show steps
  • Read the book.
  • Take notes.
  • Complete the exercises.
  • Apply the techniques to your own C++ code.
Modern C++ Tutorial
Following this tutorial will give you a head start on understanding what modern C++ is about and how it can benefit you as a programmer.
Browse courses on Modern C++
Show steps
  • Find a modern C++ tutorial.
  • Follow the tutorial.
  • Complete the exercises.
Review Class Materials
Reviewing class materials regularly will greatly increase your comfort level with the concepts covered in this course.
Show steps
  • Gather your class materials.
  • Review the materials.
  • Highlight important concepts.
Five other activities
Expand to see all activities and additional details
Show all eight activities
Standard Library Algorithms
Practicing with the Standard Library algorithms will solidify your understanding of the material covered in class.
Browse courses on Standard Library
Show steps
  • Find a list of Standard Library algorithms.
  • Choose an algorithm to practice.
  • Write a program that uses the algorithm.
  • Test your program.
Meet with Classmates to Review Concepts
Discussing the topics covered in class with classmates can greatly improve your comprehension of the material.
Show steps
  • Meet with classmates.
  • Review the concepts.
  • Discuss the concepts.
Help a Classmate with a Difficult Concept
Helping others to understand concepts will improve your own understanding of those concepts.
Show steps
  • Find a classmate who needs help.
  • Explain the concept.
  • Answer questions.
Explain Move Semantics
Creating an explanation of move semantics will force you to develop a deep understanding of the topic so you can better apply this to your C++ coding.
Browse courses on Move Semantics
Show steps
  • Choose a medium for your explanation.
  • Research move semantics.
  • Write your explanation.
  • Get feedback on your explanation.
Exceptions Exercise
Building a program that emphasizes the use of exceptions will greatly increase your comfort level using this paradigm for error handling.
Browse courses on Exceptions
Show steps
  • Design a program.
  • Code your program.
  • Test your program.

Career center

Learners who complete C++ 17: Beyond the Basics will develop knowledge and skills that may be useful to these careers:
Software Developer
Software Developers are responsible for designing, building, and maintaining software. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.
Computer Programmer
Computer Programmers write and test code that allows computer applications and software programs to run. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.
Software Engineer
Software Engineers apply engineering principles to the design, development, deployment, and maintenance of software systems. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.
Web Developer
Web Developers design and create websites. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.
Data Scientist
Data Scientists analyze data to extract meaningful insights and trends. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.
Systems Analyst
Systems Analysts analyze and design computer systems. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.
Database Administrator
Database Administrators are responsible for the maintenance and administration of databases. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.
Information Security Analyst
Information Security Analysts plan and implement security measures to protect an organization's computer networks and systems. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.
Network Administrator
Network Administrators are responsible for the maintenance and administration of computer networks. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.
Computer Systems Analyst
Computer Systems Analysts analyze and design computer systems. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.
Technical Writer
Technical Writers create instruction manuals, technical reports, and other documentation to explain complex technical information. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.
Quality Assurance Analyst
Quality Assurance Analysts test and evaluate software programs to ensure they meet quality standards. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.
User Experience Designer
User Experience Designers design and evaluate the user experience of websites, software, and other digital products. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.
Business Analyst
Business Analysts analyze business processes and systems to identify areas for improvement. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.
Project Manager
Project Managers plan, organize, and manage projects to ensure their successful completion. This course, C++ 17: Beyond the Basics, may be useful for those seeking to enter the field as it provides a foundation in modern C++ coding practices and techniques.

Reading list

We've selected seven books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in C++ 17: Beyond the Basics.
Is an excellent reference for the C++ Standard Library. It covers everything from containers to algorithms to I/O. It's a great way to learn more about the library and how to use it effectively.
Classic guide to writing effective C++ code. It covers a wide range of topics, from basic syntax to advanced techniques. It's a great way to learn how to write code that is efficient, reliable, and maintainable.
Comprehensive guide to C++ templates. It covers everything from the basics to advanced techniques. It's a great way to learn how to write efficient and reusable code.
Is the definitive guide to the C++ programming language. It covers all aspects of the language, from its history to its syntax to its standard library. It's a great way to learn more about the language and how to use it effectively.
Practical guide to concurrency in C++. It covers topics such as threads, synchronization, and locks. It's a great way to learn how to write concurrent code that is efficient and reliable.
Collection of 42 specific ways to improve your use of C++11 and C++14. It covers a wide range of topics, from basic syntax to advanced techniques. It's a great way to learn how to write code that is efficient, reliable, and maintainable.
Comprehensive guide to advanced C++ metaprogramming. It covers topics such as concepts, templates, and generic programming. It's a great way to learn how to write code that is both efficient and elegant.

Share

Help others find this course page by sharing it with your friends and followers:
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser