[過去ログ] C++相談室 part164 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
269(4): デフォルトの名無しさん (ワッチョイ 127f-L1I+) [sage] 2023/06/20(火) 22:39:00.27 ID:ui/rWsWf0(1) AAS
265が言うようにis_invocable使うとこんな感じ?
template<typename Callback>
void func(Callback cb)
{
if constexpr (std::is_invocable_v<Callback, int>) {
cb(1);
} else if constexpr (std::is_invocable_v<Callback, int, int>) {
cb(1,2);
}
}
270(1): デフォルトの名無しさん (ワッチョイ 8101-1tDD) [sage] 2023/06/20(火) 22:41:37.75 ID:vGfe0Eju0(6/7) AAS
>>269
これって関係ないif節はコンパイル時に消えるの?
272(1): デフォルトの名無しさん (JP 0H91-FhUT) [] 2023/06/20(火) 22:44:14.18 ID:Pk8V/jejH(2/4) AAS
>>269
ありがとうございます。
gcc 13.1.0 でc++17でうまくいきました。
後出しで申し訳ありませんが、C++14でかけませんか?
273(1): デフォルトの名無しさん (ワッチョイ 8101-1tDD) [sage] 2023/06/20(火) 22:47:27.45 ID:vGfe0Eju0(7/7) AAS
>>269,271
これは知らんかった
勉強になるなぁ
274(1): デフォルトの名無しさん (JP 0H91-FhUT) [] 2023/06/20(火) 22:48:18.64 ID:Pk8V/jejH(3/4) AAS
>>269
まさにこれをやりたかったです。
template<typename Callback>
void func(Callback cb)
{
// こことか
if constexpr (std::is_invocable_v<Callback, int>) {
cb(1);
} else if constexpr (std::is_invocable_v<Callback, int, int>) {
cb(1,2);
}
// ここをどうしようか悩んでいました
}
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.039s