module specification

CU5057 - Advanced C++ (2025/26)

Module specification Module approved to run in 2025/26
Module title Advanced C++
Module level Intermediate (05)
Credit rating for module 15
School School of Computing and Digital Media
Total study hours 150
 
50 hours Assessment Preparation / Delivery
64 hours Guided independent study
36 hours Scheduled learning & teaching activities
Assessment components
Type Weighting Qualifying mark Description
Coursework 50%   Set of individual programs
Coursework 50%   Interactive application integrating multiple functions
Running in 2025/26

(Please note that module timeslots are subject to change)
Period Campus Day Time Module Leader
Autumn semester North Monday Morning

Module summary

The module provides further development of programming skills at application and system level across a range of platforms. Some of the problems of system independence will be addressed along with inclusion of library applications in different environments.
Students cover the intermediate part of C++ and consider how to optimise code for different platforms. 

Students will be introduced to more advanced features of C++ such as operator overloading, templates, the STL, file handling and game/system design principles.


AIMS
• to make students aware of the features in a programming language which makes it suitable for use in systems programming;
• to enable students to compare programming languages thus reinforcing transferable programming skills;
• to enable students to apply problem solving techniques in a specialised application area.
• develop practical skills by practical coursework implementation;
• build awareness of coding practice for different platforms with respect to optimisation.

Prior learning requirements

CU4012a and b or equivalent (C++)

Syllabus

- Revision - control structures; simple and aggregate data types; pointers; classes; functions; the preprocessor; libraries.
- Access to system services; program development; conventions for writing Windows tools; initiating, controlling and monitoring processes.
- Three main aspects of simulation: modelling, execution, execution analysis & visualisation;
- C++ memory management, file handling, the STL

Balance of independent study and scheduled teaching activity

Students will develop theoretical understanding and practical skills based on weekly lectures, tutorials and supervised workshops. The workshops, in particular, are provided to enable group discussions and give opportunities for teamwork experience and practical support.

Appropriate blended learning approaches and technologies, such as the University’s VLE and online tools, will be used to facilitate and support student learning to:
• deliver content;
• encourage active learning;
• provide formative and summative assessments, and prompt feedback;
• enhance student engagement and learning experience.

Learning outcomes

On successful completion of this module students will be able to:

1 – Design and create interactive programs for specific briefs, using class libraries and the Windows IDE.
2 – Demonstrate good knowledge of the system utilities and be able to incorporate them in problem solving.
3 – Understand and apply the features of objected-oriented programming in a specialised application area.
4 – Be aware of constraints imposed by different platforms and understand how to deal with memory management.

Bibliography