#include #include #include #if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1900) #include "constexpr_string.hpp" #endif int main() { #if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1900) using namespace compiletime; constexpr auto test = to_constexpr_string("abc"); constexpr auto test2 = to_constexpr_string("def"); constexpr auto test3 = test + test2; std::string teststr("gh"); assert(test.to_string() == "abc"); assert(test3.to_string() == "abcdef"); assert((test3 + teststr) == "abcdefgh"); assert((teststr + test3) == "ghabcdef"); constexpr bool test_compare = (test == test); constexpr bool test_compare2 = (test == test2); static_assert(test_compare, ""); static_assert(!test_compare2, ""); #endif return 0; }