https://github.com/kokorinilya/cpp-course-exercises
Excercises for c++ course
https://github.com/kokorinilya/cpp-course-exercises
data-structures excercises itmo-university metaprogramming templates type-erasure
Last synced: about 1 month ago
JSON representation
Excercises for c++ course
- Host: GitHub
- URL: https://github.com/kokorinilya/cpp-course-exercises
- Owner: KokorinIlya
- Created: 2018-01-07T11:34:59.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2018-04-14T18:43:37.000Z (over 7 years ago)
- Last Synced: 2025-07-04T14:25:04.743Z (3 months ago)
- Topics: data-structures, excercises, itmo-university, metaprogramming, templates, type-erasure
- Language: C++
- Size: 15.6 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# cpp-course-exercises
Excercises for c++ courseIncluding:
# any
1) any - my implementation of std::any or boost::any.http://en.cppreference.com/w/cpp/utility/any
Implemented using void* with type_info (any_first) and polymorph classes (any_second)
# call_once_function
2) call_once_function - function, identical to std::function, that can store and call call_once functional objects (like objects, created by call_once_bind)
Implemented using Small Object Optimization (SOO). The data structure is fully reentrancy-safe
# optional
3) optional - my implementation of std::optional or boost::optional
http://en.cppreference.com/w/cpp/utility/optional
Stores objects in the optional, does't allocate memory for storing on heap.
# template_list
4) template-list - implementation of linked list, using c++-17 template metaprogramming. All functions are calculated in compile-time.