私はプログラミングが初めてで、現在C++を学んでいます。私は使用しているチュートリアルでこれを見つけました。私の質問:getNameとsetName関数で変数 'name'を使用すると、後でprivateで宣言される前にどのように使用できますか? C++は上から下へ順次言語ではありませんか? enter image description hereC++クラスの変数宣言と使用順序?
0
A
答えて
3
これは、C++コンパイラが賢明で、最初にクラス宣言全体(それが持つ可能性のある定義と共に)を読み込んでクラスメンバーを「分離」し、クラスとその内容に関する内部構造を構築します。クラス構造全体が既に分かっているときに、クラスメソッドがコンパイルされている後の段階です。たとえば、これは親クラスのメソッドと変数がどのようにアクセス可能であるかを示しています。
あなただけのC++を学ぶために始めているので、私はあなたには、コンパイラの内部で穴するつもりはないが、このテーマに関する良い本はhttps://en.wikipedia.org/wiki/Compilers:_Principles,_Techniques,_and_Toolsまたは「C現代コンパイラの実装」(https://www.cs.princeton.edu/~appel/modern/c/)
関連する問題
- 1. 宣言と宣言の順序
- 2. C++の宣言順序(const/type/function)
- 3. C++:関数オーバーロードの混乱と宣言の順序
- 4. 概念と宣言の順序
- 5. asm x86での変数宣言の順序は?
- 6. SpringApplicationConfigurationでの設定クラスの宣言の順序。春ブーツは
- 7. 使用順方向宣言クラスと継承でのブーストシリアル化
- 8. C++変数宣言
- 9. C#XMLシリアル化:名前空間宣言の順序
- 10. C++クラス宣言
- 11. クラスのメソッド宣言の順序はコンパイラにとって重要ですか?
- 12. コンパイラは宣言の順序を変更できますか?
- 13. 目的C:@property宣言とインスタンス変数の宣言
- 14. 警告:暗黙の関数宣言 - 問題を含む順序?
- 15. C++のメソッド定義と変数宣言
- 16. C++:関数を使ってクラスを変数として宣言する
- 17. エラーメッセージC言語での変数宣言
- 18. C++メソッド変数宣言
- 19. @ sign in C変数宣言
- 20. C++ Externクラス宣言
- 21. jQueryのプラグインの競合とスクリプトの宣言の順序
- 22. クラス変数を宣言する順序は、メモリの割り当て方法に影響しますか?
- 23. Swiftのクラス内の変数宣言
- 24. 使用前のC宣言
- 25. C複数の変数宣言
- 26. C#ifステートメントの共通基底クラスの宣言変数
- 27. C++クラスの静的宣言
- 28. グローバル配列の宣言と使用c#
- 29. C++は "if-else"の外でクラス変数を宣言します
- 30. C++クラスの宣言と名前空間
ドン」ですコードの画像を投稿する。コードを代わりにテキストとしてコピーします(エディタで "code samlpe"ボタンを使用することを忘れないでください)。 – user2079303
[データメンバの宣言前にメンバ関数内のデータメンバのアクセス可能性]の可能な複製(http://stackoverflow.com/questions/9783473/accessibility-of-data-member-in-member-function-before-declaration-of -data-membe) – SpamBot