C++ For C Programmers, Part A
When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan .
- Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
- Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.
About this course: This course is for experienced C programmers who want to program in C++. The examples and exercises require a basic understanding of algorithms and object-oriented software.
Created by: University of California, Santa Cruz-
Taught by: Ira Pohl, Professor
Computer Science
Each course is like an interactive textbook, featuring pre-recorded videos, quizzes and projects.
Help from your peersConnect with thousands of other learners and debate ideas, discus…

There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.
When you enroll for courses through Coursera you get to choose for a paid plan or for a free plan .
- Free plan: No certicification and/or audit only. You will have access to all course materials except graded items.
- Paid plan: Commit to earning a Certificate—it's a trusted, shareable way to showcase your new skills.
About this course: This course is for experienced C programmers who want to program in C++. The examples and exercises require a basic understanding of algorithms and object-oriented software.
Created by: University of California, Santa Cruz-
Taught by: Ira Pohl, Professor
Computer Science
Each course is like an interactive textbook, featuring pre-recorded videos, quizzes and projects.
Help from your peersConnect with thousands of other learners and debate ideas, discuss course material, and get help mastering concepts.
CertificatesEarn official recognition for your work, and share your success with friends, colleagues, and employers.
University of California, Santa Cruz UC Santa Cruz is an outstanding public research university with a deep commitment to undergraduate education. It’s a place that connects people and programs in unexpected ways while providing unparalleled opportunities for students to learn through hands-on experience.Syllabus
WEEK 1
Module 1
How to convert an existing C program to C++. Use of type safe Input/Output. Avoiding the preprocessor.
10 videos, 1 reading expand
- Reading: 1.0 Module 1 Overview
- Video: 1.1 Overview and Course Organization
- Video: 1.2 Getting Started
- Video: 1.3 Converting a C Program to C++
- Video: 1.4 Using C++ Code
- Video: 1.5 C++ Improvements
- Video: 1.6 C++ Advantages
- Video: 1.7 C++ is Better Than C
- Video: 1.8 C Swap Function
- Video: 1.9 Swap Function in C++
- Video: 1.10 Generics
Graded: Homework 1: Convert a C program to C++
WEEK 2
Module 2
Review of Dijkstra's shortest path algorithm. C++ Functions and Generics. C++ classes and OO. Point as an example.
10 videos, 1 reading expand
- Reading: 2.0 Module 2 Overview
- Video: 2.1 C++ Generics and Functions
- Video: 2.2 Multiple Template Arguments
- Video: 2.3 Graph Theory & Algorithms
- Video: 2.4 Graph as a Data Structure
- Video: 2.5 Dijkstra Shortest Path
- Video: 2.6 C++ Creating Types
- Video: 2.7 Enum & Operator Overloading
- Video: 2.8 Example: typedef days
- Video: 2.9 Natural Way to Build Widgets
- Video: 2.10 C++ Point
WEEK 3
Module 3
Point: Default constructor and initializing syntax. Conversion Constructors. Copy Constructor. List and dynamic memory allocation. Deep Copy.
12 videos, 1 reading expand
- Reading: 3.0 Module 3 Overview
- Video: 3.1 C++ Classes & Object Orientation
- Video: 3.2 Point and its Constructor
- Video: 3.3 Constructors
- Video: 3.4 Using Dijkstra's Algorithm
- Video: 3.5 The is-connected Algorithm
- Video: 3.6 Complex Aggregates - Lists
- Video: 3.7 List
- Video: 3.8 Print() Chaining
- Video: 3.9 Elaborate List
- Video: 3.10 Deep vs. Shallow Copy
- Video: 3.11 Destructor
- Video: 3.12 Dynamic Data Structures in STL
Graded: Homework 2: Implement Dijkstra's Algorithm
WEEK 4
Module 4
Prim’s and Kruskal’s algorithms. Use of basic Container Classes. Tripod-Container, Iterator, Algorithm.
14 videos, 1 reading expand
- Reading: 4.0 Module 4 Overview
- Video: 4.1 MST
- Video: 4.2 Jarnik-Prim MST
- Video: 4.3 Jarnik-Prim MST: Another Look
- Video: 4.4 Kruskal's Algorithm
- Video: 4.5 Overloading and Function Selection
- Video: 4.6 STL and STL C++11
- Video: 4.7 STL Example
- Video: 4.8 C++11 Feature: auto
- Video: 4.9 Vector Methods
- Video: 4.10 Code
- Video: 4.11 C++11 Feature: for statement
- Video: 4.12 STL Input File
- Video: 4.13 Iterators Categories
- Video: 4.14 Output a Random Graph
Graded: Homework 3: Compute the minimum spanning tree for an inputted graph
WEEK 5
Final Exam
Practice and final.
1 practice quiz expand
- Practice Quiz: Exam Practice 1
Graded: Final Exam
There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.
