What's the difference between declarative region and scope
c++, scope
Solution
A declarative region is a place where names can be declared in. I.e. they can be declared in a block, a class body, or in the bodies of a namespace, etc.
A scope is just some snippet of program text. If you say "the scope of this name", this phrase refers to the part of the program text that this name can be found using the names unqualified form.
Currently these two terms are in defective form in the standard, and there is a long standing active issue to fix these defects.
Problem
About declarative region: Every name is introduced in some portion of program text called a declarative region, which is the largest part of the program in which that name is valid About scope: In general, each particular name is valid only within some possibly discontiguous portion of program text called its scope. What is the differences between them?