Working with Objects in C++
Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.
Working with Objects in C++
This course is part of Object Oriented Programming Specialization
3,819 already enrolled
Included with
Learn more
Ask Coursera
34 reviews
Recommended experience
34 reviews
Recommended experience
What you'll learn
By the end of the course, you will be able to iterate over vectors of objects.
By the end of the course, you will have a good underrstanding of the matching algorithm.
By the end of the course, you will be able to use exception handling to write robust code.
Skills you'll gain
Tools you'll learn
Details to know
See how employees at top companies are mastering in-demand skills
Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate
There are 2 modules in this course
This course is the fourth of five courses aiming to help you to become confident working in the object-oriented paradigm in the C++ language.
This specialisation is for individuals who want to learn about objected oriented programming. It's an all-in-one package that will take you from the very fundamentals of C++, all the way to building a crypto-currency exchange platform. During the five courses, you will work with the instructor on a single project: a crypto-currency exchange platform. Whilst building the project, you will learn about a range of programming techniques from basic control flow and input/output through to file parsing, object-oriented techniques and user interaction on the console. In this fourth course, you will implement the matching engine for the crypto-currency exchange platform. You will learn about C++ vector iterations, test data to evaluate the matching engine algorithm, and deepen your knowledge about exception handling to write robust code. Upon completing the course, you will be able to: * Write functions that calculate basic statistics by iterating over vectors of objects * Use test data to evaluate the correctness of an algorithm * Use exception handling to write robust user input processing code
This week you will learn about iterating over vectors and exception handling.
What's included
14 videos5 readings10 assignments1 peer review3 discussion prompts2 ungraded labs
14 videosβ’Total 76 minutes
- Introduction to the fourth course in the specialisationβ’4 minutes
- Introduction to separating orders by type, product and timeβ’5 minutes
- Set up the OrderBook classβ’7 minutes
- Basic OrderBook class implementationβ’6 minutes
- Implement the constructor and integrate to MerkelMainβ’4 minutes
- Implement getKnownProducts with a mapβ’8 minutes
- Implement getOrdersβ’6 minutes
- Implement get low and high statsβ’9 minutes
- Summing up our work on the order bookβ’1 minute
- Working with timeβ’2 minutes
- Setting up earliest timeβ’5 minutes
- Moving through timeβ’7 minutes
- Printing stats for current time windowβ’3 minutes
- Iterating over vectors and memoryβ’10 minutes
5 readingsβ’Total 55 minutes
- Course syllabusβ’10 minutes
- Getting ready for this courseβ’10 minutes
- Reading material for this courseβ’20 minutes
- How to back-up your Visual Studio Code workβ’5 minutes
- End of week 1β’10 minutes
10 assignmentsβ’Total 30 minutes
- Separating orders by type, product and time quizβ’3 minutes
- The OrderBook class quizβ’3 minutes
- OrderBookEntry, OrderBook, MerkelMain classes quizβ’3 minutes
- The getKnownProducts with a map quizβ’3 minutes
- Implement getOrders quizβ’3 minutes
- Implement get low and high stats quizβ’3 minutes
- Simulation and time quizβ’3 minutes
- Setting up earliest time quizβ’3 minutes
- Moving through time quizβ’3 minutes
- Iterating over vectors and memory quizβ’3 minutes
1 peer reviewβ’Total 120 minutes
- Implement a market analysis functionβ’120 minutes
3 discussion promptsβ’Total 30 minutes
- Share your OrderBook classβ’10 minutes
- Share your time travel statsβ’10 minutes
- Did you see any interesting market statistics?β’10 minutes
2 ungraded labsβ’Total 120 minutes
- Lesson worksheet: separating the orders into bids and asksβ’60 minutes
- Lesson worksheet:dealing with timeβ’60 minutes
This week you will learn more about iterating over vectors and exception handling.
What's included
11 videos2 readings10 assignments2 discussion prompts2 ungraded labs
11 videosβ’Total 86 minutes
- How will we retrieve data from the user for an OrderBookEntry?β’2 minutes
- Read a line from the user, part 1β’10 minutes
- Read a line from the user, part 2β’13 minutes
- Making it robustβ’12 minutes
- Introduction to inserting the order into the order bookβ’3 minutes
- The code to insert the order into the order bookβ’8 minutes
- Pseudocodeβ’8 minutes
- Converting the pseudocode into C++β’18 minutes
- Preparing for testingβ’5 minutes
- Doing testingβ’5 minutes
- Course summaryβ’2 minutes
2 readingsβ’Total 20 minutes
- Information about the matching algorithmβ’10 minutes
- Getting ready for the next courseβ’10 minutes
10 assignmentsβ’Total 57 minutes
- End-of-course quizβ’30 minutes
- Retrieving data from the user for an OrderBookEntry quizβ’3 minutes
- Read a line from the user, part 1 quizβ’3 minutes
- Read a line from the user, part 2 quizβ’3 minutes
- Making it robust quizβ’3 minutes
- Inserting the order into the order book quizβ’3 minutes
- The code to insert the order into the order book quizβ’3 minutes
- Pseudocode quizβ’3 minutes
- Converting the pseudocode into C++ quizβ’3 minutes
- Preparing for testing quizβ’3 minutes
2 discussion promptsβ’Total 20 minutes
- Share your "enterBid" codeβ’10 minutes
- Share your matching engineβ’10 minutes
2 ungraded labsβ’Total 120 minutes
- Lesson worksheet: allowing the user to place bids and asksβ’60 minutes
- Lesson worksheet: implementing the matching engineβ’60 minutes
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Build toward a degree
This course is part of the following degree program(s) offered by University of London. If you are admitted and enroll, your completed coursework may count toward your degree learning and your progress can transfer with you.ΒΉ
Instructor
Explore more from Software Development
- Status: Free TrialU
University of London
Course
- Status: Free TrialU
University of London
Course
- Status: Free TrialM
Microsoft
Course
- Status: Free TrialU
University of London
Course
Why people choose Coursera for their career
Learner reviews
- 5 stars
82.35%
- 4 stars
8.82%
- 3 stars
2.94%
- 2 stars
0%
- 1 star
5.88%
Showing 3 of 34
Reviewed on Mar 27, 2023
This was an outstanding and exceptional course, very good instructors and very good platform to work on.
Reviewed on May 24, 2024
Great course, I really enjoyed working on the Crypto currency exchange application and looking forward to start course 5
Frequently asked questions
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
Yes. In select learning programs, you can apply for financial aid or a scholarship if you canβt afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, youβll find a link to apply on the description page.
More questions
Financial aid available,
ΒΉ Some assignments in this course are AI-graded. For these assignments, your data will be used in accordance with Coursera's Privacy Notice.
