C ディレクティブ 新しいページはコチラ
提供: yonewiki
(→#include) |
|||
56行: | 56行: | ||
具体的には以下の優先順序になる。 | 具体的には以下の優先順序になる。 | ||
+ | |||
+ | |||
+ | よく使われていたインクルードの宣言は#include <stdio.h>で、C++11という標準規格が制定された2011年くらいまでは、この方法でした。C++11以降はstdioに変わる新しいヘッダファイルcstdioに置き換わっています。VisualStudio2012あたりからcstdioが使われ始めています。他にも主要なヘッダファイルは先頭にcがついて、後ろの.hがないヘッダファイルに置き換わっています。VisualStudio2019ではC++20までの標準規格規格に対応しつつあり、メニュー{デバッグ}>{(プロジェクト名)のデバッグ}言語の標準規格の設定でどの規格を使うかが設定できます。既定ではC++14になっています。C++14の設定でもC++17やC++20の一部の機能は使えます。つまり、VS2019ではもうとっくにC++11準拠なので、cstdioを使った方が良いという感じです。他のコンパイラでもそろそろ、cstdioが対応されていると思います。 | ||
+ | |||
+ | 標準ヘッダファイルが新しくなったモノ一覧 | ||
+ | *<cassert> | ||
+ | *<ccomplex> | ||
+ | *<cctype> | ||
+ | *<cerrno> | ||
+ | *<cfenv> | ||
+ | *<cfloat> | ||
+ | *<cinttypes> | ||
+ | *<ciso646> | ||
+ | *<climits> | ||
+ | *<clocale> | ||
+ | *<cmath> | ||
+ | *<csetjmp> | ||
+ | *<csignal> | ||
+ | *<cstdalign> | ||
+ | *<cstdarg> | ||
+ | *<cstdbool> | ||
+ | *<cstddef> | ||
+ | *<cstdint> | ||
+ | *<'''cstdio'''> | ||
+ | *<cstdlib> | ||
+ | *<cstring> | ||
+ | *<ctgmath> | ||
+ | *<ctime> | ||
+ | *<cuchar> | ||
+ | *<cwchar> | ||
+ | *<cwctype> | ||
+ | |||
77行: | 109行: | ||
インクルードファイル名が重複する場合には、このあたりの優先度を理解してインクルードパスの指定をきっちりとしてやることが大事になってきます。 | インクルードファイル名が重複する場合には、このあたりの優先度を理解してインクルードパスの指定をきっちりとしてやることが大事になってきます。 | ||
− | |||
=='''<nowiki>#</nowiki>using'''== | =='''<nowiki>#</nowiki>using'''== |