The following example shows how to use the CountryUtils class in order to validate the country code of addresses.

#include <iostream>

#include <qrinvoice/util/country_util.hpp>

// ...

// just a few examples of valid ISO 3166-1 alpha-2 country codes
std::cout << qrinvoice::country_util::is_valid_iso_code("CH") << std::endl;
std::cout << qrinvoice::country_util::is_valid_iso_code("LI") << std::endl;
std::cout << qrinvoice::country_util::is_valid_iso_code("DE") << std::endl;
// prints 1 (true)

// Codes must be in upper case
std::cout << qrinvoice::country_util::is_valid_iso_code("ch") << std::endl;
// thus this prints 0 (false)