Re: struct timeval
吉見です。
Shinji KONOさんの<3990299news.pl@insigna.ie.u-ryukyu.ac.jp>から
>河野真治 @ 琉球大学情報工学です。
>
>In article <040823214356.M0123228@sma.gssm.otsuka.tsukuba.ac.jp>,
>kuno@gssm.otsuka.tsukuba.ac.jp writes
>> そ、そうなの。二重include対策はお約束と思ってた。 久野
>
>僕は「#ifndef _HOGE_H_」は、やるなって教えることが多い。
やるなという心は何ですか?
学生が自分で使うプログラム用のヘッダを書くときの話でしょうか?
ifndef による対策がどういう副作用を持っているのか知りませんので教えて
ください。
システムのヘッダーでも別のヘッダーをincludeしているのは珍しくないんで
すが、もし二重include対策をしていなければユーザーはincludeする前にすべ
てのヘッダーのincludeファイルを遡ってチェックしなければならなくなりま
す。
例えば,man で独立した関数 func_a() と func_b()の記述に
func_a() #include <h_a.h>
func_b() #include <h_b.h>
というヘッダを使うとかかれていた場合,h_a.h が絶対 h_b.h をinclude し
ていないとか、その逆とかの判定をソースを書くユーザーに義務付けるのは酷
ではないでしょうか。
#プリプロセッサーが自動チェックしてくれればいいんですが。
--
吉見 mailto:tak-yoshimi@NOSWENrio.odn.ne.jp
Remove NOSWEN
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735