規格案N4842を読んでいてよくわからなかったので質問させてください.
9.2.7 The inline specifier にて,
"If a definition of a function or variable is reachable at the point of its first declaration as inline,
the program is ill-formed."
とありますが,この文章が意味することがよくわかりません.
表題「非inline関数の定義後,それをinlineとして再宣言する」のようなことができないことを指しているのかな?
と思い以下のコードを書いてみましたがエラーは出ませんでした.
どなたかわかる方,ご教授いただけるとありがたいです.
C++
1void f(){}; // 非inline関数として定義 2inline void f(); // inline関数として再宣言,エラー出ず 3 4int main() 5{ 6 f(); 7 return 0; 8}
実行環境
GCC 9.2.0
オプション引数: -std=c++17
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/01/22 11:38