Skip to content

Learning C++ by covering Classes, Operator Overloading, Templates, Linked Lists, Iterators, and Object-Oriented Programming concepts like Inheritance and Polymorphism. It also includes Exception Handling, an ATM Case Study on Object-Oriented Design, and fundamental data structures such as Stacks and Queues

Notifications You must be signed in to change notification settings

ckexun/Computer_Programming_II

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Computer_Programming_II

Update time: 2025-03-24


Environment

C++ Visual Studio

Requirements

Download and install Visual Studio: Visual Studio Download Link

Information

ID Title Content
1 Classes Introduction to defining and using classes in C++. Covers class members, access specifiers, and object instantiation.
2 Classes: A Deeper Look In-depth exploration of class constructors, destructors, static members, and friend functions.
3 Operator Overloading Understanding how to overload operators to work with user-defined types, including common examples like +, ==, and [].
4 Templates Introduction to function and class templates for generic programming in C++.
5 Linked Lists Implementation and manipulation of singly and doubly linked lists, including insertion and deletion.
6 Iterators Using iterators to access and modify elements in containers, including STL iterator types and usage.
7 OOP: Inheritance Explanation of inheritance in object-oriented programming and how to derive new classes from existing ones.
8 OOP: Polymorphism Introduction to runtime and compile-time polymorphism, including virtual functions and base-class pointers.
9 Exception Handling Using try, catch, and throw to manage runtime errors in a structured way.
10 ATM Case Study: Object-Oriented Design A case study applying OOP principles to design and implement an ATM simulation program.
11 Stacks and Queues Using arrays and linked lists to implement stack and queue data structures, with applications.
12 Files Overview of file input/output using streams, including text and binary file operations.

Directory Structure

Computer_Programming_II/
├── Homework/
│   ├── Assignment 01/
│   │   ├── Assignment 1/
│   │   │   ├── Assignment 1.cpp
│   │   │   ├── Assignment 1.docx
│   │   │   ├── Assignment 1.pptx
│   │   │   ├── vector - Student ID - hw1.cpp
│   │   │   └── vector.h
│   │   └── vector - 1111408 - hw1.cpp
│   ├── Assignment 02/
│   │   ├── Assignment 2/
│   │   │   ├── Assignment 2.cpp
│   │   │   ├── Assignment 2.docx
│   │   │   ├── Assignment 2.pptx
│   │   │   ├── capacities.txt
│   │   │   ├── string - Student ID - hw2.cpp
│   │   │   └── string.h
│   │   └── string -1111408 - hw2.cpp
│   ├── Assignment 03/
│   │   ├── 1111408 - hw3.cpp
│   │   └── Assignment 3/
│   │       ├── Assignment 3.docx
│   │       ├── Find Floor.pptx
│   │       ├── Square root.pptx
│   │       └── Student ID - hw3.cpp
│   ├── Assignment 04/
│   │   ├── Assignment 4/
│   │   │   ├── Assignment 4.cpp
│   │   │   ├── Assignment 4.docx
│   │   │   ├── Assignment 4.pptx
│   │   │   ├── Identifier.cpp
│   │   │   ├── Identifier.h
│   │   │   ├── SourceLine - Student ID - hw4.cpp
│   │   │   ├── SourceLine.h
│   │   │   ├── string - Student ID - hw4.cpp
│   │   │   ├── string.h
│   │   │   ├── test1.cpp
│   │   │   └── test2.cpp
│   │   ├── SourceLine - 1111408 - hw4.cpp
│   │   └── string - 1111408 - hw4.cpp
│   ├── Assignment 05/
│   │   ├── Assignment 5/
│   │   │   ├── Assignment 5-1.cpp
│   │   │   ├── Assignment 5-2.cpp
│   │   │   ├── Assignment 5.pptx
│   │   │   ├── Polynomial - Student ID - hw5-1.h
│   │   │   ├── Polynomial - Student ID - hw5-2.h
│   │   │   ├── Polynomials - long long.dat
│   │   │   ├── Polynomials - long.dat
│   │   │   ├── Polynomials - short.dat
│   │   │   └── vector - Student ID - hw5.h
│   │   ├── Polynomial - 1111408 - hw5-1.h
│   │   ├── Polynomial - 1111408 - hw5-2.h
│   │   └── vector - 1111408 - hw5.h
│   ├── Assignment 06/
│   │   ├── Assignment6/
│   │   │   ├── Assignment 6.cpp
│   │   │   ├── Assignment 6.docx
│   │   │   ├── Assignment 6.pptx
│   │   │   └── list - Student ID - hw6.h
│   │   └── list - 1111408 - hw6.h
│   ├── Assignment 07/
│   │   ├── 1111408 - hw7-1.cpp
│   │   ├── 1111408 - hw7-2.cpp
│   │   ├── 1111408 - hw7-3.cpp
│   │   └── Assignment 7/
│   │       ├── Assignment 7.docx
│   │       ├── Assignment 7.pptx
│   │       ├── Student ID - hw7-1.cpp
│   │       ├── Student ID - hw7-2.cpp
│   │       └── Student ID - hw7-3.cpp
│   ├── Assignment 08/
│   │   ├── 1111408 - deque - assignment-final.h
│   │   ├── 1111408 - deque - assignment-origin.h
│   │   ├── 1111408 - deque - copy constructor.h
│   │   ├── 1111408 - deque - erase.h
│   │   ├── 1111408 - deque - fill constructor.h
│   │   ├── 1111408 - deque - insert-final.h
│   │   ├── 1111408 - deque - insert-origin.h
│   │   └── Assignment 8/
│   │       ├── 1 Fill Constructor/
│   │       │   ├── Student ID - deque - fill constructor.h
│   │       │   └── Test Fill Constructor.cpp
│   │       ├── 2 Copy Constructor/
│   │       │   ├── Student ID - deque - copy constructor.h
│   │       │   └── Test Copy Constructor.cpp
│   │       ├── 3 Assignment 1/
│   │       │   ├── Student ID - deque - assignment.h
│   │       │   └── Test Assignment 1.cpp
│   │       ├── 4 Assignment 2/
│   │       │   ├── Student ID - deque - assignment.h
│   │       │   └── Test Assignment 2.cpp
│   │       ├── 5 Insert 1/
│   │       │   ├── Student ID - deque - insert.h
│   │       │   └── Test Insert 1.cpp
│   │       ├── 6 Insert 2/
│   │       │   ├── Student ID - deque - insert.h
│   │       │   └── Test Insert 2.cpp
│   │       ├── 7 Erase 1/
│   │       │   ├── Student ID - deque - erase.h
│   │       │   └── Test Erase 1.cpp
│   │       ├── 8 Erase 2/
│   │       │   ├── Student ID - deque - erase.h
│   │       │   └── Test Erase 2.cpp
│   │       ├── Assignment 8.docx
│   │       └── Assignment 8.pptx
│   ├── Assignment 09/
│   │   ├── Assignment 9/
│   │   │   ├── Assignment 9.cpp
│   │   │   ├── Assignment 9.docx
│   │   │   ├── Flight Schedule.dat
│   │   │   └── Reservations.dat
│   │   ├── Assignment 9.cpp
│   │   ├── Assignment 9.docx
│   │   ├── Flight Schedule.dat
│   │   ├── Reservations.dat
│   │   └── s1111408_hw9/
│   │       ├── Flight.cpp
│   │       ├── Flight.h
│   │       ├── FlightSchedule.cpp
│   │       ├── FlightSchedule.h
│   │       ├── InquiryRefund.cpp
│   │       ├── InquiryRefund.h
│   │       ├── MakingReservation.cpp
│   │       ├── MakingReservation.h
│   │       ├── Reservation.cpp
│   │       ├── Reservation.h
│   │       ├── ReservationDatabase.cpp
│   │       └── ReservationDatabase.h
│   └── Assignment 10/
│       ├── Assignment 10/
│       │   ├── Assignment 10.cpp
│       │   ├── Assignment 10.docx
│       │   ├── Flight Schedule.dat
│       │   ├── Flight.cpp
│       │   ├── Flight.h
│       │   ├── FlightSchedule.cpp
│       │   ├── FlightSchedule.h
│       │   ├── InquiryRefund.cpp
│       │   ├── InquiryRefund.h
│       │   ├── MakingReservation.cpp
│       │   ├── MakingReservation.h
│       │   ├── Reservation.cpp
│       │   ├── Reservation.h
│       │   ├── ReservationDatabase.cpp
│       │   ├── ReservationDatabase.h
│       │   └── Reservations.dat
│       ├── Assignment 10.docx
│       └── s1111408_hw10/
│           ├── Flight.cpp
│           ├── Flight.h
│           ├── FlightSchedule.cpp
│           ├── FlightSchedule.h
│           ├── InquiryRefund.cpp
│           ├── InquiryRefund.h
│           ├── MakingReservation.cpp
│           ├── MakingReservation.h
│           ├── Reservation.cpp
│           ├── Reservation.h
│           ├── ReservationDatabase.cpp
│           └── ReservationDatabase.h
├── PPT/
│   ├── 1 singly linked lists.pptx
│   ├── 2 linked stacks and queues.pptx
│   ├── 3 polynomials.pptx
│   ├── 4 additional list operations.pptx
│   ├── 5 equivalence classes.pptx
│   ├── 6 doubly linked lists.pptx
│   ├── 7 stacks and queues.pptx
│   ├── 8 a mazing problem.pptx
│   ├── 9 evaluation of expressions.pptx
│   ├── ch1 - classes.pptx
│   ├── ch2 - classes - a deeper look.pptx
│   └── ch3 - operator overloading.pptx
└── Test/
    ├── Final/
    │   ├── FinalExam/
    │   │   ├── 7. Binary Files.pptx
    │   │   ├── AvailSeats - 2022-12-01.dat
    │   │   ├── AvailSeats - 2023-01-29.dat
    │   │   ├── AvailSeats - 2023-05-06.dat
    │   │   ├── AvailSeats - 2023-05-26.dat
    │   │   ├── AvailSeats - 2023-06-10.dat
    │   │   ├── AvailSeats - 2024-01-30.dat
    │   │   ├── AvailSeats - blank.dat
    │   │   ├── AvailSeats.cpp
    │   │   ├── AvailSeats.h
    │   │   ├── AvailSeatsDatabase.cpp
    │   │   ├── AvailSeatsDatabase.h
    │   │   ├── Binary files.pptx
    │   │   ├── Date.cpp
    │   │   ├── Date.h
    │   │   ├── Final Exam.cpp
    │   │   ├── Final Exam.docx
    │   │   ├── MakeReservation.cpp
    │   │   ├── MakeReservation.h
    │   │   ├── Reservation.cpp
    │   │   ├── Reservation.h
    │   │   ├── ReservationDatabase.cpp
    │   │   ├── ReservationDatabase.h
    │   │   └── Reservations.dat
    │   └── s1111408/
    │       ├── AvailSeats.cpp
    │       ├── AvailSeatsDatabase.cpp
    │       ├── Date.cpp
    │       ├── Final Exam.cpp
    │       ├── MakeReservation.cpp
    │       ├── Reservation.cpp
    │       └── ReservationDatabase.cpp
    ├── Miderm2/
    │   ├── 1201A.zip
    │   ├── 1301b.zip
    │   ├── MidtermExam2/
    │   │   ├── 1 list fill constructor/
    │   │   │   ├── Student ID - mid2-1.h
    │   │   │   ├── Test list fill constructor.cpp
    │   │   │   └── xutility.h
    │   │   ├── 2 list resize/
    │   │   │   ├── Student ID - mid2-2.h
    │   │   │   ├── Test list resize.cpp
    │   │   │   └── xutility.h
    │   │   ├── 3 list push_back/
    │   │   │   ├── Student ID - mid2-3.h
    │   │   │   ├── Test list push_back.cpp
    │   │   │   └── xutility.h
    │   │   ├── 4 list pop_back/
    │   │   │   ├── Student ID - mid2-4.h
    │   │   │   ├── Test list pop_back.cpp
    │   │   │   └── xutility.h
    │   │   ├── 5 deque push_front 1/
    │   │   │   ├── Student ID - mid2-5.h
    │   │   │   ├── Test deque push_front 1.cpp
    │   │   │   └── xutility.h
    │   │   ├── 6 deque push_front 2/
    │   │   │   ├── Student ID - mid2-5.h
    │   │   │   ├── Test deque push_front 2.cpp
    │   │   │   └── xutility.h
    │   │   ├── 7 deque resize 1/
    │   │   │   ├── Student ID - mid2-6.h
    │   │   │   ├── Test deque resize 1.cpp
    │   │   │   └── xutility.h
    │   │   ├── 8 deque resize 2/
    │   │   │   ├── Student ID - mid2-6.h
    │   │   │   ├── Test deque resize 2.cpp
    │   │   │   └── xutility.h
    │   │   ├── 9 10023 - Square root/
    │   │   │   ├── 10023 - Square root.pdf
    │   │   │   ├── Find Floor.pptx
    │   │   │   ├── Square root - hw3.pptx
    │   │   │   ├── Square root.pptx
    │   │   │   ├── Student ID - mid2-7.cpp
    │   │   │   ├── in.txt
    │   │   │   └── out.txt
    │   │   ├── Midterm Exam 2.docx
    │   │   └── resize.pptx
    │   ├── Practice/
    │   │   ├── deque - assignment.h
    │   │   ├── deque - copy constructor.h
    │   │   ├── deque - erase.h
    │   │   ├── deque - fill constructor.h
    │   │   ├── deque - insert.h
    │   │   ├── deque - push pop.cpp
    │   │   └── list -  hw6.h
    │   └── s1111408-mid2-未修改/
    │       ├── s1111408 - mid2-1.h
    │       ├── s1111408 - mid2-2.h
    │       ├── s1111408 - mid2-3.h
    │       ├── s1111408 - mid2-4.h
    │       ├── s1111408 - mid2-5.h
    │       ├── s1111408 - mid2-6.h
    │       └── s1111408 - mid2-7.cpp
    └── Midterm1/
        ├── 1201A.zip
        ├── 1301B.zip
        ├── MidtermExam 1/
        │   ├── 1 vector copy constructor/
        │   │   ├── Student ID - mid1-1.h
        │   │   └── Test vector copy constructor.cpp
        │   ├── 2 vector assignment/
        │   │   ├── Student ID - mid1-2.h
        │   │   └── Test vector assignment.cpp
        │   ├── 3 vector push_back/
        │   │   ├── Student ID - mid1-3.h
        │   │   └── Test vector push_back.cpp
        │   ├── 4 vector resize/
        │   │   ├── Student ID - mid1-4.h
        │   │   └── Test vector resize.cpp
        │   ├── 5 HugeInteger/
        │   │   ├── 10083 - Division.pdf
        │   │   ├── 5 HugeInteger.pptx
        │   │   ├── Student ID - mid1-5.cpp
        │   │   ├── in.txt
        │   │   └── out.txt
        │   ├── How is resize implemented.pptx
        │   └── Midterm Exam 1.docx
        ├── Practice/
        │   ├── hw3.cpp
        │   ├── string - hw2.cpp
        │   ├── string - hw4.cpp
        │   ├── vector - hw1.cpp
        │   └── vector - hw5.h
        └── s1111408-mid - 未修改/
            ├── 1111408 - mid1-2.h
            ├── 1111408 - mid1-3.h
            ├── 1111408 - mid1-4.h
            ├── 1111408 - mid1-5.cpp
            └── 111408 - mid1-1.h

About

Learning C++ by covering Classes, Operator Overloading, Templates, Linked Lists, Iterators, and Object-Oriented Programming concepts like Inheritance and Polymorphism. It also includes Exception Handling, an ATM Case Study on Object-Oriented Design, and fundamental data structures such as Stacks and Queues

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages