Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
Template float/int comparison
//Microsoft (R) C/C++ Optimizing Compiler Version 19.00.23506 for x64 #include <iostream> #include <Windows.h> template<typename T> static int ConvertBorderColor( const T (&borderColor)[4]) { int ret = -1; if ((borderColor[0] == 1) && (borderColor[1] == 1) && (borderColor[2] == 1) && (borderColor[3] == 1)) { ret = 0; } else if ((borderColor[0] == 0) && (borderColor[1] == 0) && (borderColor[2] == 0) && (borderColor[3] == 0)) { ret = 1; } else if ((borderColor[0] == 0) && (borderColor[1] == 0) && (borderColor[2] == 0) && (borderColor[3] == 1)) { ret = 2; } return ret; } int main() { const FLOAT borderColorF[4] = { 1.0f, 1.0f, 1.0f, 1.0f }; std::cout << ConvertBorderColor(borderColorF) << std::endl; const UINT borderColorU[4] = { 0, 0, 0, 1 }; std::cout << ConvertBorderColor(borderColorU) << std::endl; }
run
|
edit
|
history
|
help
0
error_code example
#27
C++ MSVN Compiler Type Check
a parameter pack
Chord Note Finder
MSVC lambda bug
VC++ error LNK2001 with combined use of non-type template parameters
Regex failure
Overload resolve function pointer
For NULL-embedded strings, CStringT::Find() produces what you may not expect