constexpr函数当通过变量进行调用时,自动会退化为普通函数。
C++20提供了is_constant_evaluated用于判断当前的函数是否是在常量环境下执行:
#include <string>
#include <iostream>
#include <tuple>
#include <type_traits>
using namespace std;
constexpr const char* add(int a, int b)
{
if (std::i
constexpr函数当通过变量进行调用时,自动会退化为普通函数。
C++20提供了is_constant_evaluated用于判断当前的函数是否是在常量环境下执行:
#include <string>
#include <iostream>
#include <tuple>
#include <type_traits>
using namespace std;
constexpr const char* add(int a, int b)
{
if (std::i