About default value

Hi, I am working on c++ lesson in this link:
https://www.codecademy.com/courses/learn-c-plus-plus/lessons/cpp-functions-scope-flexiblity/exercises/cpp-functions-default-arguments

I am lost in the following paragraph:
Similarly, when a function has two default arguments, you still need to call with both arguments — if BOTH of the following are true:

  • The first argument IS the default value.
  • The second argument is NOT the default value.

From my understanding, if you used the word :" the first" and " the second" this implies that you have two arguments which mean that you call with both arguments. So the logic here is hard to understand word-wise.

Hi,
It’s talking about calling functions which have default arguments set up. This means if you called the function and passed in no parameters, it would use the default ones.
For the paragraph, imagine you have;
function( a, b )
where, a and b are both set up to have default values.
calling
function()
would use default values for a and b
calling
function(4, 3)
would overwrite the default values, so a = 4 and b =3
calling
function(5)
would just overwrite a, so a = 5 and b is the default value.
However,
what that paragraph is saying, is that there’s no way to do the opposite - i.e. keep a as its default value and pass a value in for b.