Is there a way to make only certain derived classes of a class, call it Base, override a virtual method, call it foo(), of Base? The reason I need this is because all the derived classes of Base that I want to have overrides of Base::foo() I've declared final, and any derived classes of Base henceforth shall derive only from these and call invoke their (final) overrides of foo(). But because Base::foo() is not (and cannot) be declared final, I may accidentally create a new derived class of Base and thus define a catastrophic override of Base::foo(). So how do I prevent this from happening, and force a compiling error if I ever do, apart from making sure that I remember not to?
Overrides only for certain derived classes
69 Views Asked by prestokeys At
0
There are 0 best solutions below
Related Questions in C++
- How to immediately apply DISPLAYCONFIG_SCALING display scaling mode with SetDisplayConfig and DISPLAYCONFIG_PATH_TARGET_INFO
- Why can't I use templates members in its specialization?
- How to fix "Access violation executing location" when using GLFW and GLAD
- Dynamic array of structures in C++/ cannot fill a dynamic array of doubles in structure from dynamic array of structures
- How do I apply the interface concept with the base-class in design?
- File refuses to compile std::erase() even if using -std=g++23
- How can I do a successful map when the number of elements to be mapped is not consistent in Thrust C++
- Can std::bit_cast be applied to an empty object?
- Unexpected inter-thread happens-before relationships from relaxed memory ordering
- How i can move element of dynamic vector in argument of function push_back for dynamic vector
- Brick Breaker Ball Bounce
- Thread-safe lock-free min where both operands can change c++
- Watchdog Timer Reset on ESP32 using Webservers
- How to solve compiler error: no matching function for call to 'dmhFS::dmhFS()' in my case?
- Conda CMAKE CXX Compiler error while compiling Pytorch
Related Questions in VIRTUAL-FUNCTIONS
- Is it allowed to pass "this" of derived class to constructor of base class?
- What const declaration mean when used with virtual function in C++?
- Calling a C++ virtual method from Rust throws an Access violation error even after it executed successfully
- Why both codes add -visibility=hidden, the normal functions compile incorrectly, but the virtual functions compile correctly?
- Why does C++ not have Extend feature to virtual functions?
- Base class method not called on object of derived type: polymorphism without pointer and reference
- How to use virtual function in the base class?
- Example of "implicit ODR-use of a non-pure virtual member function that happens to be deleted"
- Benchmarking C++ virtual functions
- Base class pointer calling non virtual base function which is virtual in derived class
- How does C++ trailing return type help in virtual functions?
- C++ vptr tables and size of virtual class objects
- Is it ever safe to call a virtual method from a constructor?
- How to calculate totalPrice in sequelize?
- Trying to avoid code duplication - virtual with template solution
Related Questions in C++23
- Static data member of template class type: constexpr vs. const constinit
- Clang fails with "function with deduced return type cannot be used before it is defined", while GCC works
- Allow std::expected to use a private constructor
- Why does std::views::take not yield a sized_range?
- new initializer expression list treated as compound expression [-fpermissive]
- converting utf8 to utf32
- Eclipse can not seem to understand newer features of C++
- C++ concept to match an alternative of a std::variant (but that also works with types inherited from std::variant)
- deducing this and std::bind
- How to to concat multiple ranges views
- get the indices in a C++ mdspan from a reference by arithmetic
- How can I write a beautiful inline recursive lambda in C++?
- What exactly is the difference between std::forward and std::forward_like?
- I am unable to construct a vector using a iterators over a view that uses take_while in its construction
- Making a custom type behave like std::string
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular # Hahtags
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?