C++相談室 part166 (425レス)
上下前次1-新
43(1): はちみつ餃子◆8X2XSCHEME (ワッチョイ 6332-6RYV) [sage] 2025/05/08(木) 02:01:35.71 ID:aAWkv5hi0(1/3) AAS
>>41何を言ってるんだ? >>1818(3): はちみつ餃子◆8X2XSCHEME (ワッチョイ 6332-x8bn) [sage] 2025/05/05(月) 17:57:32.37 ID:7tS1Ts+e0(1) AAS
>>17
まさに「諸々に配慮」と述べた部分がそれでね……。
ここで定義した operator<< と元からある operator<< の両方が char を受け取ることが可能なので
どちらを呼び出すべきか曖昧なオーバーロード (ambiguous overload) になってしまっている。
ちゃんとやる場合はここで定義する operator<< が受け取れるのはコンテナに限定しなければならない。
型に制約を付ける真っ当な方法が入ったのは C++20 からなのでそれ以前の C++ でやろうとすると回りくどいんだよ。
C++11 でなるべく簡素に書くとしたらこんな感じかな。
外部リンク:wandbox.org
で declval を使ったのが無意味だという話をしてるんだぞ。
上下前次1-新書関写板覧索設栞歴
あと 382 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.005s