GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • cpprefjp - C++日本語リファレンス
  • GitHub Project

This view

  • Original page
  • New address

GeezerVison is showing cpprefjp.github.io — ctgmath - cpprefjp C++日本語リファレンス

  1. リファレンス
  2. ctgmath

最終更新日時: 2026年10月06日 10時18分37秒 (JST)
Akira Takahashi が更新

履歴 編集

<ctgmath>

ctgmath(C++11)(C++17で非推奨)(C++20で削除)

<ctgmath>ヘッダは、<complex>と<cmath>をインクルードするだけのヘッダである。名前はC言語の型総称数学関数のヘッダ<tgmath.h>に対応しているが、C言語の型総称マクロは提供しない。

C言語の<tgmath.h>は、引数の型に応じてsqrtf()・sqrt()・sqrtl()・csqrt()などを呼び分けるsqrtのようなマクロ (型総称マクロ) を定義する。C++では同じことが<complex>と<cmath>のオーバーロードによって実現されているため、型総称マクロに相当する機能は必要ない。

非推奨・削除の詳細

  • C99互換のためにC++11で追加されたが、ほかのヘッダをインクルードするだけでC言語の型総称マクロを提供しないため、C++17で非推奨となり、C++20で削除された
    • 代替機能として、<complex>と<cmath>を直接インクルードすること
  • C++11では、本ヘッダは<ccomplex>と<cmath>をインクルードすると規定されていた。C++17で、<ccomplex>が非推奨となったことにあわせて、<complex>をインクルードするよう変更された

バージョン

言語

  • C++11

関連項目

  • <complex>
  • <cmath>
  • <ccomplex> : 同じ経緯で非推奨・削除されたヘッダ

参照

  • P0063R3 C++17 should refer to C11 instead of C99
    • C++17で、本ヘッダが非推奨となった。あわせて、インクルードするヘッダが<ccomplex>から<complex>へ変更された
  • P0619R4 Reviewing Deprecated Facilities of C++17 for C++20
    • C++20で、本ヘッダが削除された
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.