9 Ocak 2018 Salı

std::is_invocable_v

Giriş
Şu satırı dahil ederiz.
#include <type_traits>
Bir metodun belirtilen parametre tipleri ile çağrılıp çağrılamayacağını döner.

Örnek
Şöyle yaparız.
#include <type_traits>
#include <iostream>
#include <functional>

void foo(int&){ std::cout << "called\n"; }

int main() {
  int a;
  foo(a);
  std::cout << std::is_invocable_v<decltype(foo), decltype((a))> << std::endl;
  std::invoke(foo, a);
}
Çıktı olarak şunu alırız.
called
1
called

Hiç yorum yok:

Yorum Gönder