Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

inline指定された変数(C++17)どう説明するか #60

Open
yumetodo opened this issue Nov 24, 2020 · 2 comments
Open

inline指定された変数(C++17)どう説明するか #60

yumetodo opened this issue Nov 24, 2020 · 2 comments

Comments

@yumetodo
Copy link
Contributor

yumetodo commented Nov 24, 2020

https://rinatz.github.io/cpp-book/ch04-01-declarations-and-definitions/
では

定義は重複が許されません。

とあり、それ自体は正しいのですが、inline指定されたとき、同一定義であれば重複していいというのが関数については古くから、変数についてはC++17からあります。これをスルーしてしまうとtemplateが説明できなくなります(ちらっとtempalteの説明を見た感じinline 指定が必要という誤った解説がされていたり関数テンプレートをやめてオーバーロードを使うなどというとんでも議論がされていてますがこれはまた別の話)

@yumetodo
Copy link
Contributor Author

関数については
https://rinatz.github.io/cpp-book/ch04-05-inline-functions/
で説明が有りましたね、撤回してC++17のinline変数についてどう扱うかだけに絞ります

@yumetodo yumetodo changed the title inline指定された変数(C++17)/関数をどう説明するか inline指定された変数(C++17)どう説明するか Nov 24, 2020
@wx257osn2
Copy link

これについては対象がC++11なのでスコープ外,という扱いで良さそうな気がします.論じるとしても補足的な説明に留まる感じではないでしょうか.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants