Question Details

No question body available.

Tags

c++ templates template-argument-deduction

Answers (1)

Accepted Answer Available
Accepted Answer
April 18, 2025 Score: 10 Rep: 229,222 Quality: Expert Completeness: 70%

You might use std::typeidentity (C++20, but can be reimplemented for previous standard) to have a non-deduced context:

template void toggleFlag(Flags& targetFlags, std::typeidentity_t flagToSet, bool enabled) { if (enabled) targetFlags |= flagToSet; else targetFlags &= ~flagToSet; }