Error in lesson "Working with arrays"

According to my knoweldge, there is an error in lesson “Working with arrays” in C++ Fundamentals course. Initialisation of array with zeroes is not a standard behaviour, meaning it’s not necessary true for all compilers and IDEs. Declared but not initialised arrays should be considered to contain garbage just like uninitialised variables.

This guarantees initialisation with zeroes
int arrayName[3] = { };
int arrayName[3] = { 0 };
… and of course
int arrayName[3] = { 0, 0, 0 };

Other minor issues I found during a course (I am at ~50% od part 1) are:
-using using namespace std is considered bad practice by many which was not mentioned
-machine code is procesor specific, not OS specific. Rather binaries are OS specific (but I understand it might have been simplification).

Arrays of fundamental data types, if not defined, are all initialized to their default values.

Look at default-initialization.

The course relies on elements of std namespace, so does basic development using C++. There are no conflicts, if there are then they can be resolved using scope resolution operators when required. Mosh mentioned about generalization, so as to keep focus on development.

Indeed, if there are conflicts or no major usage of any specific namespace, then there should not be any namespace generalization globally.

Look at namespace and why “using namespace std” is considered bad practice.

You can dual boot into any machine. Take Linux for example, you cannot run executables from different OS, even though they can be shared and have same processor. Mosh tells that you need to recompile your code to generate different executable. Again, this is because we use OS and not machine codes to interact with the processor.

Look at platform and the difference between cross-platform and multi-platform?