I want to define my functions in a header file, because I want my code to be header only. The problem is, that I need to include the same header file into multiple files, which causes function redefinition. One way to solve it would be inlining all the functions, but that would make them very inefficient (They use recursion, loops, etc.). I know that any compiler would probably just ignore the inlining in this case, but I want to be 100% sure, that those inline functions won't get inlined.
Can I use something like: inline __declspec(noinline) void function(){};
?