Don't panic, relax, all is well.
What that tutorial is refering to is the difference between value-initialization, default-initialization, and zero-initialization. These are a set of rules that the compiler follows to initialize objects in different "construction from nothing" cases.
Basically, value-initialization and zero-initialization are the same, they set everything to zero (unless there is a user-defined default constructor for that class). This will occur when you write:
Foo f = Foo(); // value-initialized local variable.
// btw: Foo f(); is an error, it is a function declaration!
Foo* pf = new Foo(); // value-initialized dynamically-allocated object.
Bar() : member_var() { }; // value-initialized data member.
While default-initialization will call the default constructor of the class if one exists (user-defined or not), otherwise it doesn't do any initialization. This will occur when you write:
Foo f; // default-initialized local variable.
Foo* pf = new Foo; // default-initialized dynamically-allocated object.
Bar() { }; // member_var will be default-initialized.
The same initialization rules apply to all kinds of initialization, whether it is a local (static) variable, a dynamically-allocated one, or a class data member (or a base-class initialization). There are only some special rules for global variable (with externs and stuff), but you don't have to worry about that.
At the end of the day, class types always use the default constructor (user-defined or not). The only "weird" thing about this is that primitive types (int, float, etc.) can be initialized to zero without having to do int i = 0;, new int(0) or Bar() : int_member(0) { };, but just by doing int i = int();, new int() or Bar() : int_member() { };. Personally, I don't see much point in omitting the 0, it's just confusing. And, of course, primitive types (including pointers) that do not have an initializer will not be initialized at all, but that's just basic C++ knowledge, i.e., uninitialized variables are uninitialized!
You should read section 8.5 of the C++ standard for a complete explanation of initializers, it really clears things up.