You can learn anything on Udemy. Start today with one of our 10,000+ online courses

C++, Short and Sweet, Part 1

A first course on C++ based on the book Accelerated C++.
117 reviews
WHAT'S INSIDE
  • Lifetime access to 7 lectures
  • 5+ hours of high quality content
  • A community of 23400+ students learning together!
  • 70+ discussions
TAUGHT BY
  • Jeremy Siek Professor at Indiana University

    Jeremy Siek is an Associate Professor at Indiana University Bloomington. Jeremy teaches courses on programming, algorithms, compilers, logic, and mathematics. Jeremy's interests include generic programming, programming language design, type systems, and high-performance programming. Jeremy's Ph.D. thesis laid the foundation for constrained templates, aka the "concepts" proposal for C++. Prior to that, Jeremy developed the Boost Graph Library, a C++ generic library for graph algorithms and data structures. Jeremy post-doc'd at Rice University where he developed the idea of gradual typing: a type system that integrates both dynamic and static typing in the same programming language. Jeremy is currently working on a gradually-typed version of Python, a language for reflective meta-programming, a version of concepts for Chapel, and a domain-specific compiler for generating memory-efficient linear algebra kernels. In 2009 Jeremy received the NSF CAREER award to fund his project: "Bridging the Gap Between Prototyping and Production". In 2010 Jeremy was awarded a Distinguished Visiting Fellowship from the Scottish Informatics & Computer Science Alliance.

SHARE

C++, Short and Sweet, Part 1

A first course on C++ based on the book Accelerated C++.
117 reviews

This course is for beginners who want to get started writing programs in C++, taught by Jeremy Siek, a professor at the University of Colorado. No prior knowledge of C++ is assumed. The course is based on the excellent textbook Accelerated C++ by Andrew Koenig and Barbara E. Moo. Like the textbook, the course quickly dives into problem solving and making use of the C++ standard library, including strings, vectors, and lists. The emphasis is on teaching you the parts of C++ that you will most likely need in your day-to-day programming. This course is Part 1 of a planned two-part sequence. Part 1 covers the first seven chapters of Accelerated C++, in particular, Chapters 0 through 6. The course consists of six videos of 50-60 minutes each.

Part 2 of the course, forthcoming, will cover the second half of Accelerated C++, including how to write your own classes and generic functions.

    • Over 7 lectures and 5.5 hours of content!

CURRICULUM

  • SECTION 1:
    Part 1
  • 1
    Getting started
    50:25

    This first lecture covers Chapter 0 of the textbook Accelerated C++ by Koenig and Moo.

    The topics covered in this lecture are

    1. the basic syntactic structure of C++ programs,
    2. how to define and call functions,
    3. how to create local variables,
    4. character-based output to a terminal,
    5. and the basics of namespaces.
  • 2
    Working with strings and if statements
    54:51

    This lecture covers Chapters 1 and part of Chapter 2 of Accelerated C++.

    The topics of the lecture are:

    1. rounding of floating-point numbers,
    2. character-based input from the keyboard,
    3. using the standard string class,
    4. and if statements for conditionally executing different statements.
  • 3
    Looping and working with batches of data
    52:15

    This lecture covers Chapters 2 and 3 of Accelerated C++.

    The topics  discussed in this lecture are:

    1. while and for statements for executing some statements many times,
    2. more operations on the string class,
    3. arithmetic and assignment operators for integers and floating-point numbers,
    4. and using the standard vector class.
  • 4
    Organizing programs
    57:23

    This lecture covers Chapter 4 of Accelerated C++.

    The topics discussed in this lecture are:

    1. when to create a function and how to choose a good name,
    2. how to carefully refactor a program to better organize it using functions,
    3. parameter passing with references and const references,
    4. how to use the standard sort function,
    5. and exception handling.
  • 5
    Organizing data and using sequential containers
    50:34

    This lecture covers Chapter 5 of Accelerated C++.

    The topics discussed in this lecture are:

    1. grouping related data into a struct,
    2. defining functions that work on structs,
    3. efficiency considerations when using the vector class,
    4. and how to use the list class.
  • 6
    Using library algorithms
    01:01:45

    This lecture covers Chapter 6 of Accelerated C++. The theme of this lecture is learning to use the standard algorithms on sequences.

    The lecture discusses the following topics:

    1. the ideas of iterators and adaptors,
    2. how to use the copy, find_if, and equal algorithms,
    3. how to use the transform, accumulate, remove_copy, and stable_partition algorithms,
    4. and how to apply these algorithms in the setting of computing medians and averages of student grades.
  • 7
    Code Examples Download
    Text

RATING

  • 71
  • 32
  • 10
  • 2
  • 2
AVERAGE RATING
NUMBER OF RATINGS
117

REVIEWS

  • Martin Berger
    Great course, Informative & to the point.

    I'm a big fan of Jeremy and his work. I'd watch him lecture on water boiling & grass growing. All kidding aside though, this course is great because he explains all the topics in a straightforward and very clear manner. Anyone looking to gain an insight into C++ programming should consider this course. here's a tip. If you Google the book that Jeremy is referencing in this course you are likely to find a downloadable pdf copy. Having the book to read as a companion to this course is really beneficial.

  • Sarah Macki
    A Big Help

    Concise, step-by-step instruction of C++. Plus it was free and priceless.

  • Hanan Abozaid
    c++ part one

    this course is really useful for beginners and you will learn basics of c++ as an important programming language .

  • Jørgen Kristiansen
    Well explained, covers a lov

    Explains everything very good, easly understandable, covers a lot of importent startup points of c++. Would love a new, bigger tutorial from Jeremy Siek, good teacher

  • Alex Sapsay

    Because course have many interesting video lecture and very important- free course!

  • Lifetime Access. No Limits!
  • Mobile Accessibility
  • Certificate of Completion
STUDENTS WHO VIEWED THIS COURSE ALSO VIEWED: