A namespace alias gives a shorter name to a long namespace path.

namespace alias A namespace alias uses `namespace short_name = long::namespace_name;`.

Namespace Aliases

count
namespace_aliases.cpp
Replay: real traced execution (multi-file project)
#include <iostream>
#include <string>

namespace company::reports {
std::string summarize(int count) {
    return "reports=" + std::to_string(count);
}
}

int main() {
    namespace rpt = company::reports;

    int count = 3;

    std::string summary = rpt::summarize(count);

    std::cout << "count=" << count << std::endl;
    std::cout << summary << std::endl;
    return 0;
}
#include <iostream>
#include <string>

namespace company::reports {
std::string summarize(int count) {
    return "reports=" + std::to_string(count);
}
}

int main() {
    namespace rpt = company::reports;

    int count = 1;

    std::string summary = rpt::summarize(count);

    std::cout << "count=" << count << std::endl;
    std::cout << summary << std::endl;
    return 0;
}
#include <iostream>
#include <string>

namespace company::reports {
std::string summarize(int count) {
    return "reports=" + std::to_string(count);
}
}

int main() {
    namespace rpt = company::reports;

    int count = 5;

    std::string summary = rpt::summarize(count);

    std::cout << "count=" << count << std::endl;
    std::cout << summary << std::endl;
    return 0;
}
  1. count ← 3

    10int main() {11    namespace rpt = company::reports;1213    int count→ 3 = 3; //@count=1, 51415    std::string summary = rpt::summarize(count3);
  2. std::string summarize(int count)

    4namespace company::reports {5std::string summarize(int count3) {6    return "reports=" + std::to_string(count3);7}
  3. summary ← reports=3

    15    std::string summary→ reports=3 = rpt::summarize(count3);1617    std::cout << "count=" << count3 << std::endl;18    std::cout << summaryreports=3 << std::endl;19    return 0;20}
    outputcount=3
    reports=3
  1. count ← 1

    10int main() {11    namespace rpt = company::reports;1213    int count→ 1 = 1;1415    std::string summary = rpt::summarize(count1);
  2. std::string summarize(int count)

    4namespace company::reports {5std::string summarize(int count1) {6    return "reports=" + std::to_string(count1);7}
  3. summary ← reports=1

    15    std::string summary→ reports=1 = rpt::summarize(count1);1617    std::cout << "count=" << count1 << std::endl;18    std::cout << summaryreports=1 << std::endl;19    return 0;20}
    outputcount=1
    reports=1
  1. count ← 5

    10int main() {11    namespace rpt = company::reports;1213    int count→ 5 = 5;1415    std::string summary = rpt::summarize(count5);
  2. std::string summarize(int count)

    4namespace company::reports {5std::string summarize(int count5) {6    return "reports=" + std::to_string(count5);7}
  3. summary ← reports=5

    15    std::string summary→ reports=5 = rpt::summarize(count5);1617    std::cout << "count=" << count5 << std::endl;18    std::cout << summaryreports=5 << std::endl;19    return 0;20}
    outputcount=5
    reports=5