Skip to content

RavenCS1/agh-cpp-2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CPP

C++ lab exercises for the semester. Each labNN/ folder is a standalone project with its own build files and a README.md describing the assignment, its interface, and expected output.

Labs

Lab Topic
lab01 Polymorphism through base-class pointers
lab02 A 2D image class
lab03 Event-driven game systems
lab04 2D tile map, view and iterator
lab05 Comparators and the builder pattern
lab06 A strided tensor view
lab07 RPN expression parser and AST
lab08 Composite query objects
lab09 Lazy vector iterator (filter / map / take / collect)
lab10 Notification channels (strategy pattern)
lab11 The decorator pattern via inheritance
lab12 Multiple and virtual inheritance: a World/Entity hierarchy
lab13 A templated DataStore<DataSet>: insertion idioms and cached sorting
lab14 Option<T>, Result<T>, and a small exceptions case study
lab15 A RAII file class, make, and CMake

Building a lab

Labs 01–14 each build independently with CMake:

cd labNN
mkdir build && cd build
cmake ..
cmake --build .

Lab 15 is built differently — see its own README, since it ships both a hand-written Makefile version and a separate CMake version on purpose.

Building everything at once

The top-level CMakeLists.txt pulls in labs 01–14 as subdirectories, plus lab15's CMake version (lab15/app), so a single build compiles all of them:

mkdir build && cd build
cmake ..
cmake --build .

Each lab's executable(s) end up under build/labNN/ (or build/app/ for lab15).

About

C++ Programming II — B.Eng. Applied Computer Science, AGH University of Kraków

Topics

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors