>The amazing part about examples like that is people read them, check that the compiler really does work on that basis, and then continue writing things in C++ anyway. Wild.
Well, in modern C++ this code would look like this:
std::array<int, 4> table;
bool exists_in_table(int v)
{
for (auto &elem : table) {
if (elem == v) return true;
}
return false;
}
Or even simpler: std::array<int, 4> table;
bool exists_in_table(int v)
{
return std::ranges::contains(table, v);
}
There's no shortage of footguns in C++, but nonetheless, modern C++ is safer than C.