ВУЗ:
Составители:
Рубрика:
TRect r2; // ɢɫɩɨɥɶɡɭɟɬɫɹ ɤɨɧɫɬɪɭɤɬɨɪ ɛɟɡ ɩɚɪɚɦɟɬɪɨɜ
ȼ ɨɩɟɪɚɰɢɢ new ɞɥɹ ɪɚɡɦɟɳɟɧɢɹ ɜ ɞɢɧɚɦɢɱɟɫɤɨɣ ɩɚɦɹɬɢ ɨɛɴɟɤɬɧɨɣ
ɩɟɪɟɦɟɧɧɨɣ ɡɚ ɢɦɟɧɟɦ ɬɢɩɚ ɬɚɤɠɟ ɭɤɚɡɵɜɚɸɬɫɹ ɚɪɝɭɦɟɧɬɵ ɤɨɧɫɬɪɭɤɬɨɪɚ
ɷɬɨɝɨ ɬɢɩɚ:
ptr=new TRect(7,3,18,40);
Ⱦɥɹ ɨɛɪɚɳɟɧɢɹ ɤ ɤɨɦɩɨɧɟɧɬɚɦ ɨɛɴɟɤɬɧɨɝɨ ɬɢɩɚ ɢɦɹ ɤɨɦɩɨɧɟɧɬɵ
ɞɨɥɠɧɨ ɭɬɨɱɧɹɬɶɫɹ ɢɦɟɧɟɦ ɨɛɴɟɤɬɧɨɣ ɩɟɪɟɦɟɧɧɨɣ ɢɥɢ ɭɤɚɡɚɬɟɥɟɦ ɧɚ ɧɟɟ:
r1.grow(2, -3);
pr->move(1, 1);
Boolean bb=r1.isEmpty();
4.2. Ʉɨɧɫɬɪɭɤɬɨɪɵ ɢ ɞɟɫɬɪɭɤɬɨɪɵ
Ɉɩɢɫɚɧɢɟ ɤɥɚɫɫɚ ɨɛɵɱɧɨ ɫɨɞɟɪɠɢɬ ɫɩɟɰɢɚɥɶɧɵɟ ɦɟɬɨɞɵ, ɜɵɡɵɜɚɟɦɵɟ
ɩɪɢ ɫɨɡɞɚɧɢɢ ɩɟɪɟɦɟɧɧɨɣ ɷɬɨɝɨ ɤɥɚɫɫɚ ɢ ɭɞɚɥɟɧɢɢ ɩɟɪɟɦɟɧɧɨɣ ɢɡ ɞɢɧɚɦɢ-
ɱɟɫɤɨɣ ɩɚɦɹɬɢ – ɤɨɧɫɬɪɭɤɬɨɪɵ ɢ ɞɟɫɬɪɭɤɬɨɪɵ. Ʉɨɧɫɬɪɭɤɬɨɪ ɜɵɡɵɜɚɟɬɫɹ
ɩɨɫɥɟ ɜɵɞɟɥɟɧɢɹ ɩɚɦɹɬɢ ɞɥɹ ɩɟɪɟɦɟɧɧɨɣ ɢ ɨɛɟɫɩɟɱɢɜɚɟɬ ɢɧɢɰɢɚɥɢɡɚɰɢɸ
ɤɨɦɩɨɧɟɧɬ-ɞɚɧɧɵɯ, ɞɟɫɬɪɭɤɬɨɪ ɜɵɡɵɜɚɟɬɫɹ ɩɟɪɟɞ ɨɫɜɨɛɨɠɞɟɧɢɟɦ ɩɚɦɹɬɢ,
ɡɚɧɢɦɚɟɦɨɣ ɨɛɴɟɤɬɧɨɣ ɩɟɪɟɦɟɧɧɨɣ, ɢ ɩɪɟɞɧɚɡɧɚɱɟɧ ɞɥɹ ɜɵɩɨɥɧɟɧɢɹ ɞɨ-
ɩɨɥɧɢɬɟɥɶɧɵɯ ɞɟɣɫɬɜɢɣ, ɫɜɹɡɚɧɧɵɯ ɫ ɭɧɢɱɬɨɠɟɧɢɟɦ ɨɛɴɟɤɬɧɨɣ ɩɟɪɟɦɟɧ-
ɧɨɣ, ɧɚɩɪɢɦɟɪ ɞɥɹ ɨɫɜɨɛɨɠɞɟɧɢɹ ɩɚɦɹɬɢ, ɜɵɞɟɥɟɧɧɨɣ ɞɥɹ ɨɛɴɟɤɬɚ ɜɧɟ ɭɱɚ-
ɫɬɤɚ, ɨɬɜɟɞɟɧɧɨɝɨ ɞɥɹ ɤɨɦɩɨɧɟɧɬ-ɞɚɧɧɵɯ.
Ʉɚɤ ɭɠɟ ɨɬɦɟɱɚɥɨɫɶ, ɤɨɧɫɬɪɭɤɬɨɪ ɜɫɟɝɞɚ ɢɦɟɟɬ ɢɦɹ, ɫɨɜɩɚɞɚɸɳɟɟ ɫ
ɢɦɟɧɟɦ ɤɥɚɫɫɚ, ɞɥɹ ɧɟɝɨ ɧɟ ɭɤɚɡɵɜɚɟɬɫɹ ɬɢɩ ɜɨɡɜɪɚɳɚɟɦɨɝɨ ɡɧɚɱɟɧɢɹ ɢ ɨɧ
ɧɟ ɜɨɡɜɪɚɳɚɟɬ ɧɢɤɚɤɨɝɨ ɡɧɚɱɟɧɢɹ. Ʉɨɧɫɬɪɭɤɬɨɪ ɞɨɥɠɟɧ ɨɛɟɫɩɟɱɢɜɚɬɶ ɢɧɢ-
ɰɢɚɥɢɡɚɰɢɸ ɜɫɟɯ ɤɨɦɩɨɧɟɧɬ-ɞɚɧɧɵɯ. Ⱦɥɹ ɤɥɚɫɫɚ ɦɨɠɟɬ ɛɵɬɶ ɨɛɴɹɜɥɟɧɨ
ɧɟɫɤɨɥɶɤɨ ɤɨɧɫɬɪɭɤɬɨɪɨɜ, ɪɚɡɥɢɱɚɸɳɢɯɫɹ ɱɢɫɥɨɦ ɢ ɬɢɩɚɦɢ ɩɚɪɚɦɟɬɪɨɜ. ȼ
ɨɛɳɟɦ ɫɥɭɱɚɟ ɪɚɡɥɢɱɚɸɬ ɫɥɟɞɭɸɳɢɟ ɜɢɞɵ ɤɨɧɫɬɪɭɤɬɨɪɨɜ: ɤɨɧɫɬɪɭɤɬɨɪ ɫ
ɩɚɪɚɦɟɬɪɚɦɢ, ɤɨɧɫɬɪɭɤɬɨɪ ɛɟɡ ɩɚɪɚɦɟɬɪɨɜ ɢ ɤɨɧɫɬɪɭɤɬɨɪ ɤɨɩɢɪɨɜɚɧɢɹ ɫ
ɨɞɧɢɦ ɩɚɪɚɦɟɬɪɨɦ- ɫɫɵɥɤɨɣ ɧɚ ɩɟɪɟɦɟɧɧɭɸ ɬɨɝɨ ɠɟ ɨɛɴɟɤɬɧɨɝɨ ɬɢɩɚ. ȿɫɥɢ
ɞɥɹ ɨɛɴɟɤɬɧɨɝɨ ɬɢɩɚ ɧɟ ɨɩɪɟɞɟɥɟɧɨ ɧɢ ɨɞɧɨɝɨ ɤɨɧɫɬɪɭɤɬɨɪɚ, ɤɨɦɩɢɥɹɬɨɪ
ɫɨɡɞɚɟɬ ɞɥɹ ɧɟɝɨ ɤɨɧɫɬɪɭɤɬɨɪ ɩɨ ɭɦɨɥɱɚɧɢɸ, ɧɟ ɢɫɩɨɥɶɡɭɸɳɢɣ ɩɚɪɚɦɟɬ-
ɪɨɜ. Ʉɨɧɫɬɪɭɤɬɨɪ ɤɨɩɢɪɨɜɚɧɢɹ ɧɟɨɛɯɨɞɢɦ, ɟɫɥɢ ɩɟɪɟɦɟɧɧɚɹ ɨɛɴɟɤɬɧɨɝɨ
ɬɢɩɚ ɩɟɪɟɞɚɟɬɫɹ ɜ ɤɚɤɭɸ-ɧɢɛɭɞɶ ɮɭɧɤɰɢɸ ɤɚɤ ɚɪɝɭɦɟɧɬ, ɩɨɫɤɨɥɶɤɭ ɜɫɟ ɚɪ-
ɝɭɦɟɧɬɵ ɩɟɪɟɞɚɸɬɫɹ ɜ ɮɭɧɤɰɢɸ ɩɨ ɡɧɚɱɟɧɢɸ.
Ⱦɟɫɬɪɭɤɬɨɪ ɧɟɨɛɯɨɞɢɦ, ɟɫɥɢ ɨɛɴɟɤɬɧɵɣ ɬɢɩ ɫɨɞɟɪɠɢɬ ɤɨɦɩɨɧɟɧɬɵ,
ɹɜɥɹɸɳɢɟɫɹ ɭɤɚɡɚɬɟɥɹɦɢ ɧɚ ɞɢɧɚɦɢɱɟɫɤɢɟ ɞɚɧɧɵɟ, ɤɨɬɨɪɵɟ ɞɨɥɠɧɵ ɭɧɢɱ-
ɬɨɠɚɬɶɫɹ ɩɪɢ ɭɧɢɱɬɨɠɟɧɢɢ ɨɛɴɟɤɬɧɨɣ ɩɟɪɟɦɟɧɧɨɣ. Ⱦɟɫɬɪɭɤɬɨɪ ɜɫɟɝɞɚ
ɢɦɟɟɬ ɬɨ ɠɟ ɢɦɹ, ɱɬɨ ɢ ɢɦɹ ɤɥɚɫɫɚ, ɧɨ ɩɟɪɟɞ ɢɦɟɧɟɦ ɡɚɩɢɫɵɜɚɟɬɫɹ ɡɧɚɤ
«~»
(ɬɢɥɶɞɚ). Ⱦɟɫɬɪɭɤɬɨɪ ɧɟ ɢɦɟɟɬ ɩɚɪɚɦɟɬɪɨɜ ɢ ɩɨɞɨɛɧɨ ɤɨɧɫɬɪɭɤɬɨɪɭ ɧɟ ɜɨɡ-
ɜɪɚɳɚɟɬ ɧɢɤɚɤɨɝɨ ɡɧɚɱɟɧɢɹ.
ȼ ɤɚɱɟɫɬɜɟ ɩɪɢɦɟɪɚ ɪɚɫɫɦɨɬɪɢɦ ɨɛɴɟɤɬɧɵɣ ɬɢɩ
TString ɞɥɹ ɩɪɟɞ-
ɫɬɚɜɥɟɧɢɹ ɫɬɪɨɤɨɜɵɯ ɞɚɧɧɵɯ ɫ ɛɨɥɟɟ ɜɵɫɨɤɨɣ ɫɬɟɩɟɧɶɸ ɡɚɳɢɬɵ ɨɬ ɨɲɢ-
44
TRect r2; // ɢɫɩɨɥɶɡɭɟɬɫɹ ɤɨɧɫɬɪɭɤɬɨɪ ɛɟɡ ɩɚɪɚɦɟɬɪɨɜ ȼ ɨɩɟɪɚɰɢɢ new ɞɥɹ ɪɚɡɦɟɳɟɧɢɹ ɜ ɞɢɧɚɦɢɱɟɫɤɨɣ ɩɚɦɹɬɢ ɨɛɴɟɤɬɧɨɣ ɩɟɪɟɦɟɧɧɨɣ ɡɚ ɢɦɟɧɟɦ ɬɢɩɚ ɬɚɤɠɟ ɭɤɚɡɵɜɚɸɬɫɹ ɚɪɝɭɦɟɧɬɵ ɤɨɧɫɬɪɭɤɬɨɪɚ ɷɬɨɝɨ ɬɢɩɚ: ptr=new TRect(7,3,18,40); Ⱦɥɹ ɨɛɪɚɳɟɧɢɹ ɤ ɤɨɦɩɨɧɟɧɬɚɦ ɨɛɴɟɤɬɧɨɝɨ ɬɢɩɚ ɢɦɹ ɤɨɦɩɨɧɟɧɬɵ ɞɨɥɠɧɨ ɭɬɨɱɧɹɬɶɫɹ ɢɦɟɧɟɦ ɨɛɴɟɤɬɧɨɣ ɩɟɪɟɦɟɧɧɨɣ ɢɥɢ ɭɤɚɡɚɬɟɥɟɦ ɧɚ ɧɟɟ: r1.grow(2, -3); pr->move(1, 1); Boolean bb=r1.isEmpty(); 4.2. Ʉɨɧɫɬɪɭɤɬɨɪɵ ɢ ɞɟɫɬɪɭɤɬɨɪɵ Ɉɩɢɫɚɧɢɟ ɤɥɚɫɫɚ ɨɛɵɱɧɨ ɫɨɞɟɪɠɢɬ ɫɩɟɰɢɚɥɶɧɵɟ ɦɟɬɨɞɵ, ɜɵɡɵɜɚɟɦɵɟ ɩɪɢ ɫɨɡɞɚɧɢɢ ɩɟɪɟɦɟɧɧɨɣ ɷɬɨɝɨ ɤɥɚɫɫɚ ɢ ɭɞɚɥɟɧɢɢ ɩɟɪɟɦɟɧɧɨɣ ɢɡ ɞɢɧɚɦɢ- ɱɟɫɤɨɣ ɩɚɦɹɬɢ – ɤɨɧɫɬɪɭɤɬɨɪɵ ɢ ɞɟɫɬɪɭɤɬɨɪɵ. Ʉɨɧɫɬɪɭɤɬɨɪ ɜɵɡɵɜɚɟɬɫɹ ɩɨɫɥɟ ɜɵɞɟɥɟɧɢɹ ɩɚɦɹɬɢ ɞɥɹ ɩɟɪɟɦɟɧɧɨɣ ɢ ɨɛɟɫɩɟɱɢɜɚɟɬ ɢɧɢɰɢɚɥɢɡɚɰɢɸ ɤɨɦɩɨɧɟɧɬ-ɞɚɧɧɵɯ, ɞɟɫɬɪɭɤɬɨɪ ɜɵɡɵɜɚɟɬɫɹ ɩɟɪɟɞ ɨɫɜɨɛɨɠɞɟɧɢɟɦ ɩɚɦɹɬɢ, ɡɚɧɢɦɚɟɦɨɣ ɨɛɴɟɤɬɧɨɣ ɩɟɪɟɦɟɧɧɨɣ, ɢ ɩɪɟɞɧɚɡɧɚɱɟɧ ɞɥɹ ɜɵɩɨɥɧɟɧɢɹ ɞɨ- ɩɨɥɧɢɬɟɥɶɧɵɯ ɞɟɣɫɬɜɢɣ, ɫɜɹɡɚɧɧɵɯ ɫ ɭɧɢɱɬɨɠɟɧɢɟɦ ɨɛɴɟɤɬɧɨɣ ɩɟɪɟɦɟɧ- ɧɨɣ, ɧɚɩɪɢɦɟɪ ɞɥɹ ɨɫɜɨɛɨɠɞɟɧɢɹ ɩɚɦɹɬɢ, ɜɵɞɟɥɟɧɧɨɣ ɞɥɹ ɨɛɴɟɤɬɚ ɜɧɟ ɭɱɚ- ɫɬɤɚ, ɨɬɜɟɞɟɧɧɨɝɨ ɞɥɹ ɤɨɦɩɨɧɟɧɬ-ɞɚɧɧɵɯ. Ʉɚɤ ɭɠɟ ɨɬɦɟɱɚɥɨɫɶ, ɤɨɧɫɬɪɭɤɬɨɪ ɜɫɟɝɞɚ ɢɦɟɟɬ ɢɦɹ, ɫɨɜɩɚɞɚɸɳɟɟ ɫ ɢɦɟɧɟɦ ɤɥɚɫɫɚ, ɞɥɹ ɧɟɝɨ ɧɟ ɭɤɚɡɵɜɚɟɬɫɹ ɬɢɩ ɜɨɡɜɪɚɳɚɟɦɨɝɨ ɡɧɚɱɟɧɢɹ ɢ ɨɧ ɧɟ ɜɨɡɜɪɚɳɚɟɬ ɧɢɤɚɤɨɝɨ ɡɧɚɱɟɧɢɹ. Ʉɨɧɫɬɪɭɤɬɨɪ ɞɨɥɠɟɧ ɨɛɟɫɩɟɱɢɜɚɬɶ ɢɧɢ- ɰɢɚɥɢɡɚɰɢɸ ɜɫɟɯ ɤɨɦɩɨɧɟɧɬ-ɞɚɧɧɵɯ. Ⱦɥɹ ɤɥɚɫɫɚ ɦɨɠɟɬ ɛɵɬɶ ɨɛɴɹɜɥɟɧɨ ɧɟɫɤɨɥɶɤɨ ɤɨɧɫɬɪɭɤɬɨɪɨɜ, ɪɚɡɥɢɱɚɸɳɢɯɫɹ ɱɢɫɥɨɦ ɢ ɬɢɩɚɦɢ ɩɚɪɚɦɟɬɪɨɜ. ȼ ɨɛɳɟɦ ɫɥɭɱɚɟ ɪɚɡɥɢɱɚɸɬ ɫɥɟɞɭɸɳɢɟ ɜɢɞɵ ɤɨɧɫɬɪɭɤɬɨɪɨɜ: ɤɨɧɫɬɪɭɤɬɨɪ ɫ ɩɚɪɚɦɟɬɪɚɦɢ, ɤɨɧɫɬɪɭɤɬɨɪ ɛɟɡ ɩɚɪɚɦɟɬɪɨɜ ɢ ɤɨɧɫɬɪɭɤɬɨɪ ɤɨɩɢɪɨɜɚɧɢɹ ɫ ɨɞɧɢɦ ɩɚɪɚɦɟɬɪɨɦ- ɫɫɵɥɤɨɣ ɧɚ ɩɟɪɟɦɟɧɧɭɸ ɬɨɝɨ ɠɟ ɨɛɴɟɤɬɧɨɝɨ ɬɢɩɚ. ȿɫɥɢ ɞɥɹ ɨɛɴɟɤɬɧɨɝɨ ɬɢɩɚ ɧɟ ɨɩɪɟɞɟɥɟɧɨ ɧɢ ɨɞɧɨɝɨ ɤɨɧɫɬɪɭɤɬɨɪɚ, ɤɨɦɩɢɥɹɬɨɪ ɫɨɡɞɚɟɬ ɞɥɹ ɧɟɝɨ ɤɨɧɫɬɪɭɤɬɨɪ ɩɨ ɭɦɨɥɱɚɧɢɸ, ɧɟ ɢɫɩɨɥɶɡɭɸɳɢɣ ɩɚɪɚɦɟɬ- ɪɨɜ. Ʉɨɧɫɬɪɭɤɬɨɪ ɤɨɩɢɪɨɜɚɧɢɹ ɧɟɨɛɯɨɞɢɦ, ɟɫɥɢ ɩɟɪɟɦɟɧɧɚɹ ɨɛɴɟɤɬɧɨɝɨ ɬɢɩɚ ɩɟɪɟɞɚɟɬɫɹ ɜ ɤɚɤɭɸ-ɧɢɛɭɞɶ ɮɭɧɤɰɢɸ ɤɚɤ ɚɪɝɭɦɟɧɬ, ɩɨɫɤɨɥɶɤɭ ɜɫɟ ɚɪ- ɝɭɦɟɧɬɵ ɩɟɪɟɞɚɸɬɫɹ ɜ ɮɭɧɤɰɢɸ ɩɨ ɡɧɚɱɟɧɢɸ. Ⱦɟɫɬɪɭɤɬɨɪ ɧɟɨɛɯɨɞɢɦ, ɟɫɥɢ ɨɛɴɟɤɬɧɵɣ ɬɢɩ ɫɨɞɟɪɠɢɬ ɤɨɦɩɨɧɟɧɬɵ, ɹɜɥɹɸɳɢɟɫɹ ɭɤɚɡɚɬɟɥɹɦɢ ɧɚ ɞɢɧɚɦɢɱɟɫɤɢɟ ɞɚɧɧɵɟ, ɤɨɬɨɪɵɟ ɞɨɥɠɧɵ ɭɧɢɱ- ɬɨɠɚɬɶɫɹ ɩɪɢ ɭɧɢɱɬɨɠɟɧɢɢ ɨɛɴɟɤɬɧɨɣ ɩɟɪɟɦɟɧɧɨɣ. Ⱦɟɫɬɪɭɤɬɨɪ ɜɫɟɝɞɚ ɢɦɟɟɬ ɬɨ ɠɟ ɢɦɹ, ɱɬɨ ɢ ɢɦɹ ɤɥɚɫɫɚ, ɧɨ ɩɟɪɟɞ ɢɦɟɧɟɦ ɡɚɩɢɫɵɜɚɟɬɫɹ ɡɧɚɤ «~» (ɬɢɥɶɞɚ). Ⱦɟɫɬɪɭɤɬɨɪ ɧɟ ɢɦɟɟɬ ɩɚɪɚɦɟɬɪɨɜ ɢ ɩɨɞɨɛɧɨ ɤɨɧɫɬɪɭɤɬɨɪɭ ɧɟ ɜɨɡ- ɜɪɚɳɚɟɬ ɧɢɤɚɤɨɝɨ ɡɧɚɱɟɧɢɹ. ȼ ɤɚɱɟɫɬɜɟ ɩɪɢɦɟɪɚ ɪɚɫɫɦɨɬɪɢɦ ɨɛɴɟɤɬɧɵɣ ɬɢɩ TString ɞɥɹ ɩɪɟɞ- ɫɬɚɜɥɟɧɢɹ ɫɬɪɨɤɨɜɵɯ ɞɚɧɧɵɯ ɫ ɛɨɥɟɟ ɜɵɫɨɤɨɣ ɫɬɟɩɟɧɶɸ ɡɚɳɢɬɵ ɨɬ ɨɲɢ- 44
Страницы
- « первая
- ‹ предыдущая
- …
- 42
- 43
- 44
- 45
- 46
- …
- следующая ›
- последняя »