を理解し、私はこれと同じタイトルでいくつかのスレッドを閲覧しましたが、私はこれを理解役立っている何かを見つけることができません...関数テンプレートのオーバーロード:Stroustrup氏の例が
次はのスキャンであります「The C++ Programming Language」第2版、B Stroustrup、13.3.2項(336ページ)の例はほとんどありません。
私は第三sqrt(z)
オーバーロードの解決を理解していません。私は決議がsqrt<complex<double>>(complex<double>)
になると思った。
Obv関数double sqrt(double)
が請求書に適合しません。しかし、私はtemplate<class T>T sqrt(T)
がsqrt<double>(complex<double>)
に解決できないと考えていました。T
は2つの異なる解像度を持っていると思います。T
は「スコープ」全体で同じものでなければなりません。
私は誤解したことがありますか?それを指摘できますか? :)ありがとう!
declをよく見てください。テンプレート引数( 'T')の型とパラメータの型(' complex ')の間に違いがあります。後者は前者から 'T'を引きます。したがって、彼の記法は正しい。または。 。私はあなたの質問を完全に誤解していました。 –
WhozCraig