Skip to Content
Advanced C++ Programming Cookbook
book

Advanced C++ Programming Cookbook

by Dr. Rian Quinn
January 2020
Intermediate to advanced
454 pages
11h 25m
English
Packt Publishing
Content preview from Advanced C++ Programming Cookbook

Adding const support to our delegate

Our delegate currently cannot take a member function marked as const as we have not provided our delegate with a wrapper capable of doing so. For example, our heroes' attack() function currently looks like this:

class spiderman{public:    bool attack(int x, int)    {        return x == 0 ? true : false;    }};

We would, however, like our hero attack() functions to look like the following since they do not modify any private member variables:

class spiderman{public:    bool attack(int x, int) const    {        return x == 0 ? true : false;    }};

To support this change, we must create a wrapper that supports this, shown as follows:

template<    typename T,    typename RET,    typename... ARGS    >class wrapper_const :    public base<RET, ARGS...>{
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Modern C++ Programming Cookbook

Modern C++ Programming Cookbook

Marius Bancila

Publisher Resources

ISBN: 9781838559915Supplemental Content