ΠΠ΅ΡΡΡΡΠΊΡΠΎΡΡ ΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
ΠΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠΎΡΠΌΠ°ΡΠ΅, ΠΈΠΌΡ_Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ° — ΡΡΠΎ ΠΈΠΌΡ ΠΊΠ»Π°ΡΡΠ° Ρ ΠΏΡΠ΅ΡΠΈΠΊΡΠΎΠΌ ~ (ΡΠΈΠ»ΡΠ΄Π°). ΠΡΡΠ³ΠΈΡ ΠΈΠΌΠ΅Π½ Ρ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠΎΠ² Π½Π΅ Π±ΡΠ²Π°Π΅Ρ. ΠΠ΅ΡΡΡΡΠΊΡΠΎΡ Π² ΠΊΠ»Π°ΡΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½. ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Ρ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ° Π½Π΅Ρ. ΠΠ΅Ρ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. Π’Π΅Π»ΠΎ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ° — ΡΡΠΎ Π±Π»ΠΎΠΊ Π»ΠΈΠ±ΠΎ ΠΏΡΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅ΠΌΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ ΡΠΎΡΠΊΠ° Ρ Π·Π°ΠΏΡΡΠΎΠΉ. ΠΡΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ΅Π»Π° Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡ… Π§ΠΈΡΠ°ΡΡ Π΅ΡΡ >
ΠΠ΅ΡΡΡΡΠΊΡΠΎΡΡ ΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² (ΡΠ΅ΡΠ΅ΡΠ°Ρ, ΠΊΡΡΡΠΎΠ²Π°Ρ, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½Π°Ρ)
ΠΠ΅ΡΡΡΡΠΊΡΠΎΡ — ΡΡΠΎ ΡΠ»Π΅Π½ ΠΊΠ»Π°ΡΡΠ°, Π³Π΄Π΅ Π·Π°ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½Ρ Π²ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π΄Π»Ρ ΡΠ½ΠΈΡΡΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠ»Π°ΡΡΠ°. ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ°:
externopt ~ΠΈΠΌΡ_ΠΊΠ»Π°ΡΡΠ° () ΡΠ΅Π»ΠΎ_Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ°
ΠΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠΎΡΠΌΠ°ΡΠ΅, ΠΈΠΌΡ_Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ° — ΡΡΠΎ ΠΈΠΌΡ ΠΊΠ»Π°ΡΡΠ° Ρ ΠΏΡΠ΅ΡΠΈΠΊΡΠΎΠΌ ~ (ΡΠΈΠ»ΡΠ΄Π°). ΠΡΡΠ³ΠΈΡ ΠΈΠΌΠ΅Π½ Ρ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠΎΠ² Π½Π΅ Π±ΡΠ²Π°Π΅Ρ. ΠΠ΅ΡΡΡΡΠΊΡΠΎΡ Π² ΠΊΠ»Π°ΡΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½. ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Ρ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ° Π½Π΅Ρ. ΠΠ΅Ρ ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ. Π’Π΅Π»ΠΎ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ° — ΡΡΠΎ Π±Π»ΠΎΠΊ Π»ΠΈΠ±ΠΎ ΠΏΡΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°Π΅ΠΌΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠΌ ΡΠΎΡΠΊΠ° Ρ Π·Π°ΠΏΡΡΠΎΠΉ. ΠΡΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ΅Π»Π° Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡ ΡΠ½Π°Π±ΠΆΠ΅Π½ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ extern. Π ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ΅Π»ΠΎ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ° — ΡΡΠΎ Π±Π»ΠΎΠΊ, Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ ΡΠ½ΠΈΡΡΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°. ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ΅Π»ΠΎ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ° Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ ΡΠ΅Π»Ρ ΠΌΠ΅ΡΠΎΠ΄Π° Π±Π΅Π· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΈΠΏΠ° void.
ΠΠ΅ΡΡΡΡΠΊΡΠΎΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ° ΠΏΠ΅ΡΠ΅ΡΡΠ°Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅. ΠΡΠ·ΠΎΠ² Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ. ΠΠΎΠΌΠ΅Π½Ρ Π²ΡΠ·ΠΎΠ²Π° ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎ Π½Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½. Π―Π²Π½ΠΎ Π²ΡΠ·Π²Π°ΡΡ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡ ΠΈΠ· ΠΊΠΎΠ΄Π° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π½Π΅Π»ΡΠ·Ρ.
Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΊΠ»Π°ΡΡ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ°. ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΡΠ²Π½ΠΎ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π½Π΅ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ, Π΅Π³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈΠ»Π»ΡΡΡΡΠΈΡΡΠ΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ (ll08.cs).
// ll08.cs Π΄Π΅ΡΡΡΡΠΊΡΠΎΡ using System; class, Π {.
~Π ().
{
Console.WriteLine («Destructor!»);
} }
class Test.
{
static void MainQ.
{
A b = new A ();
b = null;
}
Destructor!
Π Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅ .NET Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΡΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Finalize (). ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ ΡΠΈΠ½Π°Π»ΠΈΠ·Π°ΡΠΎΡΠΎΠΌ, ΠΏΠΎΠ΄ΠΌΠ΅Π½ΡΠ΅Ρ Π² ΡΠ±ΠΎΡΠΊΠ΅ ΡΠ΅Π°Π»ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π½ΡΠΉ Π² ΠΊΠΎΠ΄Π΅ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡ. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ Π½Π° ΡΡΠΎΠ²Π½Π΅ ΡΠ·ΡΠΊΠ° Π‘#, ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΠΎΠ±ΡΠ°ΡΠ°ΡΡ Π½Π° ΡΡΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Π½ΠΎ ΡΡΠΎ Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, Π΅ΡΠ»ΠΈ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΠΊΠΎΠ΄ Π½Π° ΡΠ·ΡΠΊΠ΅ IL.
ΠΠ΅ΡΡΡΡΠΊΡΠΎΡ Π½ΡΠΆΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠΎΠΌ ΠΊΠ»Π°ΡΡΠ΅, ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΠ΅Π±ΡΠ΅Ρ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΡ Π½Π΅ΡΠΏΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ ΡΠ΅ΡΡΡΡΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ²ΡΠ·ΡΠ²Π°Π΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Ρ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΠΎΠΌ ΡΠ°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ΅ΡΠ΅Π²ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅. ΠΠΎΠ³Π΄Π° ΠΎΠ±ΡΠ΅ΠΊΡ Π²ΡΡ ΠΎΠ΄ΠΈΡ ΠΈΠ· ΠΎΠ±Π»Π°ΡΡΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡΠ° ΡΠ°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π²ΠΎΠ³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ. ΠΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡ.
Π Π²Π΅ΡΡΠΈΠΈ C# 7.0 Π²Π²Π΅Π΄Π΅Π½Π° Π΅ΡΠ΅ ΠΎΠ΄Π½Π° ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ, ΠΎΡΠ½ΠΎΡΡΡΠΈΡ ΡΡ ΠΊ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²: Π΄Π΅ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ. ΠΠ΄Π΅ΡΡ ΠΎ Π΄Π΅ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ΅ ΡΠΏΠΎΠΌΡΠ½Π΅ΠΌ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎΠ±Ρ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅Π΄ΠΈΡΡ, ΡΡΠΎ Π΅Π³ΠΎ Π½Π΅Π»ΡΠ·Ρ ΠΏΡΡΠ°ΡΡ Ρ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠΎΠΌ. ΠΠ΅ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΡΠ΄ΠΎΠ±Π½Π΅Π΅ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅ΡΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ Π³Π»Π°Π²Π΅, «Π‘ΡΠ΅Π΄ΡΡΠ²Π° Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ». Π ΡΠ΅ΠΉΡΠ°Ρ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΠΌΡΡ Π½Π° ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ°Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ².
ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΎΡΠΊΡΡΡΡΠΌ ΡΠ»Π΅Π½Π°ΠΌ Π΄Π°Π½Π½ΡΡ (ΠΏΠΎΠ»ΡΠΌ ΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌ) Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΡΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°. Π€ΠΎΡΠΌΠ°Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠ°:
{ΠΈΠΌΡ_ΡΠ»Π΅Π½Π° = Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΈΠΌΡ_ΡΠ»Π΅Π½Π° = Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅}.
ΠΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ° ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
new ΠΠΌΡ_ΠΊΠ»Π°ΡΡΠ° (ΡΠΏΠΈΡΠΎΠΊ_Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ²)0t ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡ_ΠΎΠ±ΡΠ΅ΠΊΡΠ°
ΠΠ°ΠΊ ΠΎΡΠΌΠ΅ΡΠ΅Π½ΠΎ Π² ΡΠΎΡΠΌΠ°ΡΠ΅, ΡΠΏΠΈΡΠΎΠΊ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°ΡΡΠΈΠΌΠΈ Π΅Π³ΠΎ ΡΠΊΠΎΠ±ΠΊΠ°ΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠΏΡΡΠ΅Π½. ΠΠΎ ΡΡΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠ»ΡΡΠ°Π΅, ΠΊΠΎΠ³Π΄Π° Π² ΠΊΠ»Π°ΡΡΠ΅ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ (ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ Π±Π΅Π· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΈΠ»ΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΌΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ²).
ΠΠ»Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠΎΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π½Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π²Π½ΠΎΡΠΈΡΡ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π² Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠ°.
ΠΡΠΈΠΌΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠΎΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²:
// 1109 — ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²
using System;
class CalendarDate.
{
public string Dow = «Π‘ΡΠ΅Π΄Π°»; // ΠΠ΅Π½Ρ Π½Π΅Π΄Π΅Π»ΠΈ public string Mounth; // ΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΠΌΠ΅ΡΡΡΠ° public uint Date; // ΠΠ°ΡΠ° (ΡΠΈΡΠ»ΠΎ Π² ΠΌΠ΅ΡΡΡΠ΅)
class Program.
{.
static void MainQ.
{
CalendarDate date = new CalendarDate ().
{
Mounth = «ΠΠ΅ΠΊΠ°Π±ΡΡ» ,.
Date = 12,.
Dow = «Π§Π΅ΡΠ²Π΅ΡΠ³» .
};
Console.WriteLine («date.Mounth = «+ date. Mounth);
Console.WriteLine («date.Date = «+ date. Date);
Console.WriteLine («date.Dow = «+ date. Dow);
CalendarDate nowDate = new CalendarDate.
{
Date = 11,.
Mounth = date.Mounth.
};
Console.WriteLine («nowDate.Mounth = «+ nowDate. Mounth);
Console.WriteLine («nowDate.Date = «+ nowDate. Date);
Console.WriteLine («nowDate.Dow = «+ nowDate. Dow);
} }
Π Π΅Π·ΡΠ»ΡΡΠ°ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
date.Mounth = ΠΠ΅ΠΊΠ°Π±ΡΡ date. Date = 12 date. Dow = Π§Π΅ΡΠ²Π΅ΡΠ³ nowDate. Mounth = ΠΠ΅ΠΊΠ°Π±ΡΡ nowDate. Date = 11 nowDate. Dow = Π‘ΡΠ΅Π΄Π° Π ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΡΠΎΠ·Π΄Π°ΡΡΡΡ ΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΡΡΡΡ Π΄Π²Π° ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΊΠ»Π°ΡΡΠ° CalendarDate. Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΈΠ· Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π²ΡΠ΅Ρ ΠΏΠΎΠ»Π΅ΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΎΠ±ΡΠ΅ΠΊΡΠ°. ΠΠ»Ρ Π²ΡΠΎΡΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ Dow («Π‘ΡΠ΅Π΄Π°») Π²ΡΠ±ΡΠ°Π½ΠΎ ΠΈΠ· Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠΈ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ»Ρ Π² ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠΈ ΠΊΠ»Π°ΡΡΠ°.
Π ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠ» ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ Π±Π΅Π· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π² ΠΊΠ»Π°ΡΡ CalendarDate. ΠΡΡΠ³ΠΈΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠΎΠ² Π² ΡΡΠΎΠΌ ΠΊΠ»Π°ΡΡΠ΅ Π½Π΅Ρ. ΠΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ Π² ΠΊΠ»Π°ΡΡΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠΎΠ² Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΠΏΠ΅ΡΠ΅Π΄ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠΎΠΌ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΠΌΠΎΠΆΠ΅Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡΡΡ ΡΠΏΠΈΡΠΎΠΊ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°. Π‘ ΠΈΡ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ, ΠΎΡΡΡΡΡΡΠ²ΡΡΡΠΈΡ Π² ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ°.
ΠΡΠΈ Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²Π΅ Ρ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΠΌ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠΎΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ Π²ΠΎΠΏΡΠΎΡ ΠΎΠ± ΠΈΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ. ΠΠΎ ΡΡΡΠΈ, ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΊ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΡ Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΠΈΠ»ΠΈ ΡΠ²Π½ΡΠΌ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΎΡΠΊΡΡΡΡΠΌ ΡΠ»Π΅Π½Π°ΠΌ Π΄Π°Π½Π½ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠ°. Π Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠΎ C# ΠΎΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ, ΡΡΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ LINQ-ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ.
ΠΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ ΠΈ Π·Π°Π΄Π°Π½ΠΈΡ
- 1. ΠΠ°Π·ΠΎΠ²ΠΈΡΠ΅ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΠΊΠ»Π°ΡΡΠ°, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ ΠΏΡΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠΈ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ.
- 2. ΠΠ°Π·ΠΎΠ²ΠΈΡΠ΅ ΡΠ°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡΠΈ ΡΠ»Π΅Π½ΠΎΠ² ΠΊΠ»Π°ΡΡΠ°.
- 3. ΠΠ°ΠΊΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠ²Π»ΡΡΡΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΌΠΈ Π² ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠΈ Π½Π΅ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ»Ρ?
- 4. ΠΠΎΠ³Π΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π΅ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΠΎΠ»Π΅ΠΉ?
- 5. ΠΠ°ΠΊΠΎΠ² ΡΡΠ°ΡΡΡ Π΄ΠΎΡΡΡΠΏΠ° Π½Π΅ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ»Ρ ΠΏΡΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΠΈ Π² Π΅Π³ΠΎ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠΈ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² Π΄ΠΎΡΡΡΠΏΠ°?
- 6. ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΎΠ±ΡΡΠ²ΠΈΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΠΎΠ»Π΅ Ρ ΡΠΈΠΏΠΎΠΌ ΠΊΠ»Π°ΡΡΠ°, ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΎΠ½ΠΎ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ?
- 7. Π ΠΊΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π² ΠΊΠ»Π°ΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΈ Π½Π΅ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄Ρ?
- 8. Π ΠΊΠ°ΠΊΠΈΡ ΡΠ»ΡΡΠ°ΡΡ ΡΠ΅Π»ΠΎΠΌ Π½Π΅ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ?
- 9. Π ΠΊΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ (ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ Π±Π΅Π· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ²) ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ?
- 10. ΠΠ°Π·ΠΎΠ²ΠΈΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΡΠ»ΠΊΠΈ this.
- 11. Π ΠΊΠ°ΠΊΠΈΡ ΠΌΠ΅ΡΠΎΠ΄Π°Ρ ΡΡΡΠ»ΠΊΠ° this ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ?
- 12. ΠΠΏΠΈΡΠΈΡΠ΅ ΡΠΎΡΠΌΠ°Ρ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ Π½Π΅ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°.
- 13. ΠΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΠ΅ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°.
- 14. ΠΠ±ΡΡΡΠ½ΠΈΡΠ΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ°.
- 15. ΠΠ΅ΡΠ΅ΡΠΈΡΠ»ΠΈΡΠ΅ Π²ΠΈΠ΄Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠΎΠ².
- 16. ΠΠ°ΠΊΠΎΠ² ΡΡΠ°ΡΡΡ Π΄ΠΎΡΡΡΠΏΠ° Ρ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠ° ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π²ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ Π² ΠΊΠ»Π°ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ?
- 17. Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΡ?
- 18. ΠΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ Π΄ΡΡΠ³ΠΎΠΌΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΊΠ»Π°ΡΡΠ°?
- 19. ΠΠ±ΡΡΡΠ½ΠΈΡΠ΅ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠ°.
- 20. Π‘ΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π΅ΡΡΡΡΠΊΡΠΎΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»Π°ΡΡΠ΅?
- 21. Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ ΡΠΈΠ½Π°Π»ΠΈΠ·Π°ΡΠΎΡ?
- 22. ΠΠ°ΠΊΠΈΠ΅ ΡΠ»Π΅Π½Ρ ΠΊΠ»Π°ΡΡΠ° ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π² ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΎΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²?