1. Homepage of Dr. Zoltán Porkoláb
    1. Home
    2. Archive
  2. Teaching
    1. Timetable
    2. Bolyai College
    3. C++ (for mathematicians)
    4. Imperative programming (BSc)
    5. Multiparadigm programming (MSc)
    6. Programming (MSc Aut. Sys.)
    7. Programming languages (PhD)
    8. Software technology lab
    9. Theses proposals (BSc and MSc)
  3. Research
    1. CodeChecker
    2. CodeCompass
    3. Templight
    4. Projects
    5. Publications
    6. PhD students
  4. Affiliations
    1. Dept. of Programming Languages and Compilers
    2. Ericsson Hungary Ltd

Advanced C++ (Multiparadigm) programming

In this semester this course is only in Hungarian

Haladó C++ (Multiparadigma) programozás MSc hallgatók számára.

alt text

kurzus-kód: IPM-18sztKVHCEG IPM-08sztMPPE IPM-08EsztMPPE

Grading policy (Update!)

The final mark will be based 50% on the lab work (either the strong typing task or creating the library specified on Canvas) counting 50 points and 50% on the final exam counting another 50 points. You have to do at least one of the lab tasks, in case you do both we will count the one which has more points. The exam most likely will take place on 17th May, Monday between 18.00h - 19.00h on the Canvas.

On-line material

Due to the current Covid-19 situation, I continue to provide on-line materials. I will upload recorded videos of the lectures. See the links to the videos at the Planned schedule section. Videos from (the second part of) last year are available after this section. The videos are in mkv and mp4 format, you can likely play them directly in your browser. If not, just download them and play it. Free tools, like mplayer or vlc play mkv and mp4 format.

Please, send your questions to gsd@inf.elte.hu, I will answer them in Neptun, so everybody can learn from it.

Schedule 2021 Spring

Lecture

Time   Where Lecturer Contact
Monday 17:45-19:15 MS Teams Porkoláb Zoltán gsd@inf.elte.hu

Lab/Consultation

Time   Room Lecturer Contact
Friday 16:00-17:30 MS Teams Szalay Richárd szalayrichard@inf.elte.hu

Planned schedule:

  1. Exceptions, exception safe programming Video: HaladoCpp-ea-01.mp4
  2. Constants, const correctness, constexpr Video: HaladoCpp-ea-02a.mp4 HaladoCpp-ea-02b.mp4
  3. Constructor, destructor, operators Video: HaladoCpp-ea-03.mp4
  4. Pointers, references, move semantics Video: HaladoCpp-ea-04.mp4
  5. Lambda expressions Video: HaladoCpp-ea-05.mp4
  6. Memory handling Smart pointers Video: HaladoCpp-ea-06.mp4
  7. Advanced templates Video: HaladoCpp-ea-07.mp4
  8. Advanced STL Video: HaladoCpp-ea-08.mp4
  9. Template metaprogramming Video: HaladoCpp-ea-09.mp4
  10. Concurrent programming Video: HaladoCpp-ea-10.mp4
  11. Other C++11/14/17 Video: HaladoCpp-ea-11.mp4
  12. Compiling, linking Video: HaladoCpp-ea-12.mp4

Videos from the labors/consultations

Videos from 2020

  1. Memory handling, RAII Video: multi-6-memory.mkv multi-6-raii.mkv
  2. Smart pointers Video: multi-7-smartptr.mkv
  3. Compiling, linking Video: multi-8-complink-1.mkv multi-8-complink-2.mkv
  4. Advanced templates Video: multi-9-templates.mkv
  5. Advanced STL Video: multi-10-stl-1.mkv multi-10-stl-2.mkv multi-10-stl-3.mkv multi-10-stl-4.mkv
  6. Template metaprogramming Video: multi-11-meta.mkv
  7. Concurrent programming Video: multi-12-concur-1.mkv multi-12-concur-2.mkv
  8. Other C++11/14/17 Video: multi-13-cpp11-lang.mkv multi-13-cpp11-util.mkv

Reading

The C++17 Draft Standard

alt text

Bjarne Stroustrup: The C++ Programming Language, 4th Edition.

Addison-Wesley (May 2013) ISBN 978-0321563842.

alt text

Bjarne Stroustrup: A C++ Programzási nyelv, 3. speciális kiadás.

Kiskapu Kiadó (2001). ISBN: 9789639301184.

alt text

Scott Meyers: Effective Modern C++, 42 Specific Ways to Improve Your Use of C++11 and C++14.

O’Reilly Media (November 2014).