トップページ > プログラム > 2016年04月14日 > Y6Qtie590

書き込み順位&時間帯一覧

36 位/222 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000010010002



使用した名前一覧書き込んだスレッド一覧
デフォルトの名無しさん (ワッチョイ 4bdc-WXps)
C++相談室 part124 [無断転載禁止]©2ch.net

書き込みレス一覧

C++相談室 part124 [無断転載禁止]©2ch.net
87 :デフォルトの名無しさん (ワッチョイ 4bdc-WXps)[sage]:2016/04/14(木) 17:51:08.75 ID:Y6Qtie590
C++では外部関数を宣言する時のexternは省略可能じゃなかったっけ?
付けても害はないし、つけなくても意味は同じ。

古いCとの互換性とかで残ってるんだと思ったが、
Cにおいても「externなしだと曖昧になる場面」てのが思い浮かばない。


g++ では関数内での外部関数宣言もexternなしで通ったよ。
C++相談室 part124 [無断転載禁止]©2ch.net
90 :デフォルトの名無しさん (ワッチョイ 4bdc-WXps)[sage]:2016/04/14(木) 20:24:15.71 ID:Y6Qtie590
そういえば下のような感じで、外部関数のプロトタイプ宣言と
引数型の簡単な変換のインライン定義とを並べて書くときに…

namespace SomeSpace {
 extern bool some_condition_check(const char* str);
 inline bool some_condition_check(const std::string& str) {return str.c_str();}

 bool another_condition_check(const char* str);
 inline bool another_condition_check(const std::string& str) {return str.c_str();}
}

externを書いておくと関数名がきれいに縦に並んでちょっと見やすくなる
という効用があるね。"extern" と "inline" の字数が同じだから。


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。