Liste des Groupes | Revenir à cl c |
pozz <pozzugno@gmail.com> writes:It is code that must run on several platforms.
Consider this code:if ( ..bypass all further tests.. ) {
>
if (cond1) {
...
} else if (cond2) {
...
} else if (cond3) {
...
}
>
I want to activate every single if with a macro preprocessor. All the
combinations are possible: only the first, only the second, only the
third, the first and second... and so on.
>
What's the best method to have a clean code that is always compiled
without errors?
// for a "skip all conditional segments" case (if needed)
...
#if TEST_1
} else if (cond1) {
...
#endif
#if TEST_2
} else if (cond2) {
...
#endif
#if TEST_3
} else if (cond3) {
...
#endif
} else {
// for a "no conditional segment" ran case (if needed)
...
}
Having said that, it's hard to imagine a scenario where doing
something like this is the best way to solve the higher level
problem. It is almost certainly better to rethink the reasoning
that resulted in choosing this scheme, and find a way to avoid it.
Les messages affichés proviennent d'usenet.