FAQ: Advanced C++ and Modern Design Online Course

Concepts are the heaviest addition, and are really a paradigm shift.

Indeed, but once you get the hang of it it becomes easier.
I have lots of practical examples.

Really exciting. It's all got to do with deciding at which (meta) level to define and subsequently, use "things".

C++:
// Interface contract specification
template<typename T>
    concept IInput = requires (T x) { x.message(); };

template<typename T>
    concept IOutput = requires (T x, const std::string& s) { x.print(s); };

// I/O stuff
template <typename I, typename O> requires IInput<I> && IOutput<O>
    class SUD
{ // System under discussion, using composition

private:
    I i; O o;
public:
    SUD(const I& input, const O& output) : i(input), o(output) {}
    void run()
    { o.print(i.message());    }
};
 
Last edited:

Attachments

  • quantNet_HW1.webp
    quantNet_HW1.webp
    10.4 KB · Views: 87
With some major funds now teaching C++ 26 before it is even released, I am wondering if I should wait some time before enrolling for the course.

My aim is to start sometime in December, as I am trying to skill up in holidays and weekends.

Are there plans / timelines for when 23 and eventually 26 might be incorporated?

Many thanks,
 
With some major funds now teaching C++ 26 before it is even released, I am wondering if I should wait some time before enrolling for the course.

My aim is to start sometime in December, as I am trying to skill up in holidays and weekends.

Are there plans / timelines for when 23 and eventually 26 might be incorporated?

Many thanks,
What's your current C++ level?
 
Last edited:
Back
Top Bottom