Compile-Time Overload Resolution

#include <cstdio>

// Diagnostic logging (INCOMPLETE API)
void logValue(int value) {
    std::printf("int=%d\n", value);
}
void logValue(float value){
    std::printf("float=%.2f\n", value);
}
int main() {
    logValue(10);     // OK
    logValue(2.5f);   // Missing overload &#8212; must be resolved at compile time
    return 0;
}

Solving Approach

 

 

 

 

Upvote
Downvote
Loading...

Input

Expected Output

int=10 float=2.50