ВУЗ:
Составители:
Рубрика:
ɬɟɤɫɬ_3
#endif
ȼ ɮɚɣɥɚɯ ɡɚɝɨɥɨɜɤɨɜ ɞɥɹ ɩɪɟɞɨɬɜɪɚɳɟɧɢɹ ɦɧɨɝɨɤɪɚɬɧɨɝɨ ɜɤɥɸɱɟɧɢɹ ɨɞɧɨ-
ɝɨ ɢ ɬɨɝɨ ɠɟ ɡɚɝɨɥɨɜɤɚ ɜ ɩɪɨɝɪɚɦɦɭ ɨɛɵɱɧɨ ɩɪɢɫɭɬɫɬɜɭɟɬ ɬɟɤɫɬ ɜɢɞɚ:
#if !defined(_DEFS_H)
#define _DEFS_H
/* Ɍɟɤɫɬ ɨɛɴɹɜɥɹɟɦɵɯ ɡɚɝɨɥɨɜɤɨɜ */
...
#endif /* Ʉɨɧɟɰ _DEFS_H */
4. Ɉɛɴɟɤɬɧɨ-ɨɪɢɟɧɬɢɪɨɜɚɧɧɵɟ ɫɪɟɞɫɬɜɚ C++
4.1. Ɉɛɴɟɤɬɧɵɟ ɬɢɩɵ ɞɚɧɧɵɯ
Ɉɛɴɟɤɬɧɵɟ ɬɢɩɵ ɞɚɧɧɵɯ – ɷɬɨ ɚɝɪɟɝɚɬɧɵɟ ɬɢɩɵ, ɩɨɥɧɨɫɬɶɸ ɨɩɪɟɞɟ-
ɥɹɟɦɵɟ ɩɪɨɝɪɚɦɦɢɫɬɨɦ, ɨɩɢɫɚɧɢɟ ɨɛɴɟɤɬɧɨɝɨ ɬɢɩɚ ɞɨɥɠɧɨ ɫɨɞɟɪɠɚɬɶ
ɤɨɦɩɨɧɟɧɬɵ-ɞɚɧɧɵɟ, ɨɩɪɟɞɟɥɹɸɳɢɟ ɨɛɥɚɫɬɶ ɜɨɡɦɨɠɧɵɯ ɡɧɚɱɟɧɢɣ ɩɟɪɟ-
ɦɟɧɧɵɯ ɷɬɨɝɨ ɬɢɩɚ, ɢ ɨɩɢɫɚɧɢɟ ɨɩɟɪɚɰɢɣ, ɞɨɩɭɫɬɢɦɵɯ ɧɚɞ ɩɟɪɟɦɟɧɧɵɦɢ
ɷɬɨɝɨ ɬɢɩɚ ɢ ɤɨɦɩɨɧɟɧɬɚɦɢ-ɞɚɧɧɵɦɢ, ɫɨɫɬɚɜɥɹɸɳɢɦɢ ɩɟɪɟɦɟɧɧɭɸ. Ⱦɥɹ
ɫɨɯɪɚɧɟɧɢɹ ɫɨɜɦɟɫɬɢɦɨɫɬɢ ɫ ɩɪɨɝɪɚɦɦɚɦɢ ɧɚ ɋɢ ɫɢɧɬɚɤɫɢɫ ɨɩɢɫɚɧɢɹ ɨɛɴ-
ɟɤɬɧɨɝɨ ɬɢɩɚ ɜ ɋɢ++ ɜɵɛɪɚɧ ɩɨɞɨɛɧɵɦ ɨɩɢɫɚɧɢɸ ɫɬɪɭɤɬɭɪɧɨɝɨ ɬɢɩɚ ɢɥɢ
ɬɢɩɚ ɨɛɴɟɞɢɧɟɧɢɹ ɜ ɋɢ. ȼ ɫɭɳɧɨɫɬɢ ɫɬɪɭɤɬɭɪɵ ɢ ɨɛɴɟɞɢɧɟɧɢɹ ɜ ɋɢ++ ɪɚɫ-
ɫɦɚɬɪɢɜɚɸɬɫɹ ɤɚɤ ɜɚɪɢɚɧɬɵ ɨɛɴɟɤɬɧɵɯ ɬɢɩɨɜ. ɂɦɟɸɬɫɹ ɬɪɢ ɜɚɪɢɚɧɬɚ ɨɛɴ-
ɟɤɬɧɵɯ ɬɢɩɨɜ: ɫɬɪɭɤɬɭɪɚ (
struct), ɨɛɴɟɞɢɧɟɧɢɟ (union) ɢ ɤɥɚɫɫ (class),
ɪɚɡɥɢɱɚɸɳɢɟɫɹ ɜɨɡɦɨɠɧɨɫɬɹɦɢ ɞɨɫɬɭɩɚ ɤ ɤɨɦɩɨɧɟɧɬɚɦ ɬɢɩɚ. ȼ ɞɚɥɶɧɟɣ-
ɲɟɦ ɞɥɹ ɤɪɚɬɤɨɫɬɢ ɜɫɟ ɜɚɪɢɚɧɬɵ ɨɛɴɟɤɬɧɵɯ ɬɢɩɨɜ ɛɭɞɟɦ ɧɚɡɵɜɚɬɶ ɤɥɚɫɫɚ-
ɦɢ. Ɉɩɢɫɚɧɢɟ ɨɛɴɟɤɬɧɨɝɨ ɬɢɩɚ ɫɬɪɨɢɬɫɹ ɩɨ ɫɯɟɦɟ:
ɜɚɪɢɚɧɬ_ɬɢɩɚ ɢɦɹ_ɬɢɩɚ: ɫɩɢɫɨɤ_ɛɚɡɨɜɵɯ_ɤɥɚɫɫɨɜ
{ɤɨɦɩɨɧɟɧɬɵ (ɱɥɟɧɵ) ɤɥɚɫɫɚ}
Ʉɨɦɩɨɧɟɧɬɚɦɢ ɤɥɚɫɫɚ ɦɨɝɭɬ ɛɵɬɶ ɤɨɦɩɨɧɟɧɬɵ-ɞɚɧɧɵɟ ɢ ɤɨɦɩɨɧɟɧɬɵ-
ɮɭɧɤɰɢɢ. Ʉɨɦɩɨɧɟɧɬɵ-ɮɭɧɤɰɢɢ ɩɪɟɞɧɚɡɧɚɱɟɧɵ ɞɥɹ ɜɵɩɨɥɧɟɧɢɹ ɨɩɟɪɚɰɢɣ
ɧɚɞ ɨɛɴɟɤɬɧɵɦɢ ɞɚɧɧɵɦɢ, ɢɯ ɱɚɫɬɨ ɧɚɡɵɜɚɸɬ ɦɟɬɨɞɚɦɢ ɤɥɚɫɫɚ. Ʉɨɦɩɨ-
ɧɟɧɬɵ-ɞɚɧɧɵɟ ɧɚɡɵɜɚɸɬ ɫɜɨɣɫɬɜɚɦɢ ɤɥɚɫɫɚ.
Ⱦɥɹ ɤɚɠɞɨɝɨ ɤɨɦɩɨɧɟɧɬɚ ɤɥɚɫɫɚ ɭɫɬɚɧɚɜɥɢɜɚɟɬɫɹ ɭɪɨɜɟɧɶ ɞɨɫɬɭɩɚ ɥɢ-
ɛɨ ɹɜɧɨ, ɭɤɚɡɚɧɢɟɦ ɭɪɨɜɧɹ ɞɨɫɬɭɩɚ ɨɞɧɢɦ ɢɡ ɤɥɸɱɟɜɵɯ ɫɥɨɜ
public,
protected ɢɥɢ private ɫ ɞɜɨɟɬɨɱɢɟɦ, ɥɢɛɨ ɧɟɹɜɧɨ, ɩɨ ɭɦɨɥɱɚɧɢɸ. ɍɤɚɡɚ-
ɧɢɟ ɭɪɨɜɧɹ ɞɨɫɬɭɩɚ ɨɬɧɨɫɢɬɫɹ ɤɨ ɜɫɟɦ ɩɨɫɥɟɞɭɸɳɢɦ ɤɨɦɩɨɧɟɧɬɚɦ ɤɥɚɫɫɚ,
ɩɨɤɚ ɧɟ ɜɫɬɪɟɬɢɬɫɹ ɭɤɚɡɚɧɢɟ ɞɪɭɝɨɝɨ ɭɪɨɜɧɹ ɞɨɫɬɭɩɚ. ɍɪɨɜɟɧɶ ɞɨɫɬɭɩɚ
public ɪɚɡɪɟɲɚɟɬ ɞɨɫɬɭɩ ɤ ɤɨɦɩɨɧɟɧɬɚɦ ɤɥɚɫɫɚ ɢɡ ɥɸɛɨɝɨ ɦɟɫɬɚ ɩɪɨɝɪɚɦ-
ɦɵ, ɜ ɤɨɬɨɪɨɦ ɢɡɜɟɫɬɧɚ ɩɟɪɟɦɟɧɧɚɹ ɷɬɨɝɨ ɤɥɚɫɫɚ. ɍɪɨɜɟɧɶ ɞɨɫɬɭɩɚ
private
ɪɚɡɪɟɲɚɟɬ ɞɨɫɬɭɩ ɤ ɤɨɦɩɨɧɟɧɬɚɦ ɤɥɚɫɫɚ ɬɨɥɶɤɨ ɢɡ ɦɟɬɨɞɨɜ ɷɬɨɝɨ ɤɥɚɫɫɚ.
ɍɪɨɜɟɧɶ ɞɨɫɬɭɩɚ
protected ɢɦɟɟɬ ɫɦɵɫɥ ɬɨɥɶɤɨ ɜ ɢɟɪɚɪɯɢɱɟɫɤɨɣ ɫɢɫɬɟɦɟ
41
ɬɟɤɫɬ_3 #endif ȼ ɮɚɣɥɚɯ ɡɚɝɨɥɨɜɤɨɜ ɞɥɹ ɩɪɟɞɨɬɜɪɚɳɟɧɢɹ ɦɧɨɝɨɤɪɚɬɧɨɝɨ ɜɤɥɸɱɟɧɢɹ ɨɞɧɨ- ɝɨ ɢ ɬɨɝɨ ɠɟ ɡɚɝɨɥɨɜɤɚ ɜ ɩɪɨɝɪɚɦɦɭ ɨɛɵɱɧɨ ɩɪɢɫɭɬɫɬɜɭɟɬ ɬɟɤɫɬ ɜɢɞɚ: #if !defined(_DEFS_H) #define _DEFS_H /* Ɍɟɤɫɬ ɨɛɴɹɜɥɹɟɦɵɯ ɡɚɝɨɥɨɜɤɨɜ */ ... #endif /* Ʉɨɧɟɰ _DEFS_H */ 4. Ɉɛɴɟɤɬɧɨ-ɨɪɢɟɧɬɢɪɨɜɚɧɧɵɟ ɫɪɟɞɫɬɜɚ C++ 4.1. Ɉɛɴɟɤɬɧɵɟ ɬɢɩɵ ɞɚɧɧɵɯ Ɉɛɴɟɤɬɧɵɟ ɬɢɩɵ ɞɚɧɧɵɯ – ɷɬɨ ɚɝɪɟɝɚɬɧɵɟ ɬɢɩɵ, ɩɨɥɧɨɫɬɶɸ ɨɩɪɟɞɟ- ɥɹɟɦɵɟ ɩɪɨɝɪɚɦɦɢɫɬɨɦ, ɨɩɢɫɚɧɢɟ ɨɛɴɟɤɬɧɨɝɨ ɬɢɩɚ ɞɨɥɠɧɨ ɫɨɞɟɪɠɚɬɶ ɤɨɦɩɨɧɟɧɬɵ-ɞɚɧɧɵɟ, ɨɩɪɟɞɟɥɹɸɳɢɟ ɨɛɥɚɫɬɶ ɜɨɡɦɨɠɧɵɯ ɡɧɚɱɟɧɢɣ ɩɟɪɟ- ɦɟɧɧɵɯ ɷɬɨɝɨ ɬɢɩɚ, ɢ ɨɩɢɫɚɧɢɟ ɨɩɟɪɚɰɢɣ, ɞɨɩɭɫɬɢɦɵɯ ɧɚɞ ɩɟɪɟɦɟɧɧɵɦɢ ɷɬɨɝɨ ɬɢɩɚ ɢ ɤɨɦɩɨɧɟɧɬɚɦɢ-ɞɚɧɧɵɦɢ, ɫɨɫɬɚɜɥɹɸɳɢɦɢ ɩɟɪɟɦɟɧɧɭɸ. Ⱦɥɹ ɫɨɯɪɚɧɟɧɢɹ ɫɨɜɦɟɫɬɢɦɨɫɬɢ ɫ ɩɪɨɝɪɚɦɦɚɦɢ ɧɚ ɋɢ ɫɢɧɬɚɤɫɢɫ ɨɩɢɫɚɧɢɹ ɨɛɴ- ɟɤɬɧɨɝɨ ɬɢɩɚ ɜ ɋɢ++ ɜɵɛɪɚɧ ɩɨɞɨɛɧɵɦ ɨɩɢɫɚɧɢɸ ɫɬɪɭɤɬɭɪɧɨɝɨ ɬɢɩɚ ɢɥɢ ɬɢɩɚ ɨɛɴɟɞɢɧɟɧɢɹ ɜ ɋɢ. ȼ ɫɭɳɧɨɫɬɢ ɫɬɪɭɤɬɭɪɵ ɢ ɨɛɴɟɞɢɧɟɧɢɹ ɜ ɋɢ++ ɪɚɫ- ɫɦɚɬɪɢɜɚɸɬɫɹ ɤɚɤ ɜɚɪɢɚɧɬɵ ɨɛɴɟɤɬɧɵɯ ɬɢɩɨɜ. ɂɦɟɸɬɫɹ ɬɪɢ ɜɚɪɢɚɧɬɚ ɨɛɴ- ɟɤɬɧɵɯ ɬɢɩɨɜ: ɫɬɪɭɤɬɭɪɚ (struct), ɨɛɴɟɞɢɧɟɧɢɟ (union) ɢ ɤɥɚɫɫ (class), ɪɚɡɥɢɱɚɸɳɢɟɫɹ ɜɨɡɦɨɠɧɨɫɬɹɦɢ ɞɨɫɬɭɩɚ ɤ ɤɨɦɩɨɧɟɧɬɚɦ ɬɢɩɚ. ȼ ɞɚɥɶɧɟɣ- ɲɟɦ ɞɥɹ ɤɪɚɬɤɨɫɬɢ ɜɫɟ ɜɚɪɢɚɧɬɵ ɨɛɴɟɤɬɧɵɯ ɬɢɩɨɜ ɛɭɞɟɦ ɧɚɡɵɜɚɬɶ ɤɥɚɫɫɚ- ɦɢ. Ɉɩɢɫɚɧɢɟ ɨɛɴɟɤɬɧɨɝɨ ɬɢɩɚ ɫɬɪɨɢɬɫɹ ɩɨ ɫɯɟɦɟ: ɜɚɪɢɚɧɬ_ɬɢɩɚ ɢɦɹ_ɬɢɩɚ: ɫɩɢɫɨɤ_ɛɚɡɨɜɵɯ_ɤɥɚɫɫɨɜ {ɤɨɦɩɨɧɟɧɬɵ (ɱɥɟɧɵ) ɤɥɚɫɫɚ} Ʉɨɦɩɨɧɟɧɬɚɦɢ ɤɥɚɫɫɚ ɦɨɝɭɬ ɛɵɬɶ ɤɨɦɩɨɧɟɧɬɵ-ɞɚɧɧɵɟ ɢ ɤɨɦɩɨɧɟɧɬɵ- ɮɭɧɤɰɢɢ. Ʉɨɦɩɨɧɟɧɬɵ-ɮɭɧɤɰɢɢ ɩɪɟɞɧɚɡɧɚɱɟɧɵ ɞɥɹ ɜɵɩɨɥɧɟɧɢɹ ɨɩɟɪɚɰɢɣ ɧɚɞ ɨɛɴɟɤɬɧɵɦɢ ɞɚɧɧɵɦɢ, ɢɯ ɱɚɫɬɨ ɧɚɡɵɜɚɸɬ ɦɟɬɨɞɚɦɢ ɤɥɚɫɫɚ. Ʉɨɦɩɨ- ɧɟɧɬɵ-ɞɚɧɧɵɟ ɧɚɡɵɜɚɸɬ ɫɜɨɣɫɬɜɚɦɢ ɤɥɚɫɫɚ. Ⱦɥɹ ɤɚɠɞɨɝɨ ɤɨɦɩɨɧɟɧɬɚ ɤɥɚɫɫɚ ɭɫɬɚɧɚɜɥɢɜɚɟɬɫɹ ɭɪɨɜɟɧɶ ɞɨɫɬɭɩɚ ɥɢ- ɛɨ ɹɜɧɨ, ɭɤɚɡɚɧɢɟɦ ɭɪɨɜɧɹ ɞɨɫɬɭɩɚ ɨɞɧɢɦ ɢɡ ɤɥɸɱɟɜɵɯ ɫɥɨɜ public, protected ɢɥɢ private ɫ ɞɜɨɟɬɨɱɢɟɦ, ɥɢɛɨ ɧɟɹɜɧɨ, ɩɨ ɭɦɨɥɱɚɧɢɸ. ɍɤɚɡɚ- ɧɢɟ ɭɪɨɜɧɹ ɞɨɫɬɭɩɚ ɨɬɧɨɫɢɬɫɹ ɤɨ ɜɫɟɦ ɩɨɫɥɟɞɭɸɳɢɦ ɤɨɦɩɨɧɟɧɬɚɦ ɤɥɚɫɫɚ, ɩɨɤɚ ɧɟ ɜɫɬɪɟɬɢɬɫɹ ɭɤɚɡɚɧɢɟ ɞɪɭɝɨɝɨ ɭɪɨɜɧɹ ɞɨɫɬɭɩɚ. ɍɪɨɜɟɧɶ ɞɨɫɬɭɩɚ public ɪɚɡɪɟɲɚɟɬ ɞɨɫɬɭɩ ɤ ɤɨɦɩɨɧɟɧɬɚɦ ɤɥɚɫɫɚ ɢɡ ɥɸɛɨɝɨ ɦɟɫɬɚ ɩɪɨɝɪɚɦ- ɦɵ, ɜ ɤɨɬɨɪɨɦ ɢɡɜɟɫɬɧɚ ɩɟɪɟɦɟɧɧɚɹ ɷɬɨɝɨ ɤɥɚɫɫɚ. ɍɪɨɜɟɧɶ ɞɨɫɬɭɩɚ private ɪɚɡɪɟɲɚɟɬ ɞɨɫɬɭɩ ɤ ɤɨɦɩɨɧɟɧɬɚɦ ɤɥɚɫɫɚ ɬɨɥɶɤɨ ɢɡ ɦɟɬɨɞɨɜ ɷɬɨɝɨ ɤɥɚɫɫɚ. ɍɪɨɜɟɧɶ ɞɨɫɬɭɩɚ protected ɢɦɟɟɬ ɫɦɵɫɥ ɬɨɥɶɤɨ ɜ ɢɟɪɚɪɯɢɱɟɫɤɨɣ ɫɢɫɬɟɦɟ 41
Страницы
- « первая
- ‹ предыдущая
- …
- 39
- 40
- 41
- 42
- 43
- …
- следующая ›
- последняя »