Source File: ex48.cpp

#include <fmt/core.h>
#include <string>

auto make_adder(auto base) {
  return [=](auto a) -> auto {
    return base + a;
  };
}

int main() {
  auto int_adder = make_adder(100);
  auto float_adder = make_adder(23.4f);

  fmt::println("{} + {} = {}", 100, 3, int_adder(4));
  fmt::println("{} + {} = {}", 23.4f, 32.8f, float_adder(32.8f));
}