ุชู… ุงู„ุญู„: static_cast

ุจุงู„ุชุฃูƒูŠุฏุŒ ูˆู‡ู†ุง ูŠุฐู‡ุจ:

ููŠ ุนุงู„ู… ุจุฑู…ุฌุฉ C++ุŒ ุบุงู„ุจู‹ุง ู…ุง ุชุญุชุงุฌ ุฅู„ู‰ ุชุญูˆูŠู„ ุงู„ุฃู†ูˆุงุน. ูŠู…ูƒู† ุฃู† ูŠูƒูˆู† ุงู„ุชุญูˆูŠู„ ู…ู† ู†ูˆุน ุจูŠุงู†ุงุช ุจุณูŠุท ุฅู„ู‰ ู†ูˆุน ู…ุนู‚ุฏุŒ ุฃูˆ ู…ู† ูุฆุฉ ู…ุดุชู‚ุฉ ุฅู„ู‰ ูุฆุฉ ุฃุณุงุณูŠุฉุŒ ุฃูˆ ู…ู† ุฃูŠ ู†ูˆุน ู…ุนูŠู† ุฅู„ู‰ ุฃูŠ ู†ูˆุน ุขุฎุฑ. ุชูˆูุฑ C++ ุฃุฑุจุน ุขู„ูŠุงุช ุฅุฑุณุงู„ ู„ุฅุฌุฑุงุก ู‡ุฐู‡ ุงู„ุชุญูˆูŠู„ุงุช: `static_cast`ุŒ ูˆ`dynamic_cast`ุŒ ูˆ`reinterpret_cast`ุŒ ูˆC++ style cast. ููŠ ู‡ุฐู‡ ุงู„ู…ู‚ุงู„ุฉ ุณู†ู†ุงู‚ุด `static_cast` ุจุงู„ุชูุตูŠู„.

ุชูุงุตูŠู„ ุฃูƒุซุฑ

ุญู„: ู…ูƒุฏูŠุฑ

ุฅู†ุดุงุก ุงู„ุฏู„ุงุฆู„ ููŠ C++ ู‡ูŠ ุฃูƒุซุฑ ู…ู† ู…ุฌุฑุฏ ู…ู‡ู…ุฉ ุชุงูู‡ุฉ. ุฅู†ู‡ ูŠุชุนู…ู‚ ููŠ ุงู„ูˆุธุงุฆู ุงู„ู…ุนู‚ุฏุฉ ุฏุงุฎู„ ุงู„ู‡ูŠุงูƒู„ ุงู„ุญุณุงุจูŠุฉ ูˆูŠู‚ุฏู… ูˆุธูŠูุฉ ุญุชู…ูŠุฉ ู„ู…ุนุงู„ุฌุฉ ู†ุธุงู… ุงู„ู…ู„ูุงุช. ูŠุนุฏ ุงู„ุชุนุงู…ู„ ู…ุน ุงู„ุฏู„ุงุฆู„ โ€“ ุฅู†ุดุงุก ุฃูˆ ุญุฐู ุฃูˆ ู‚ุฑุงุกุฉ โ€“ ุฌุฒุกู‹ุง ุฃุณุงุณูŠู‹ุง ู…ู† ุงู„ุจุฑู…ุฌุฉ ุนู„ู‰ ู…ุณุชูˆู‰ ู†ุธุงู… ุงู„ุชุดุบูŠู„. ุฅู† ูู‡ู… "mkdir" ูˆูƒูŠููŠุฉ ุนู…ู„ู‡ ูˆุชูุงุตูŠู„ู‡ ุงู„ุฏู‚ูŠู‚ุฉ ูŠุซุจุช ุฃู†ู‡ ู…ููŠุฏ ู„ุฃูŠ ูุฑุฏ ูŠุชุนุงู…ู„ ู…ุน ุจุฑู…ุฌุฉ C++.

ุชูุงุตูŠู„ ุฃูƒุซุฑ

ุชู… ุงู„ุญู„: ุชุญุฏูŠุฏ Unicode

ูŠูˆู†ูŠูƒูˆุฏ ู‡ูŠ ุฅุญุฏู‰ ู…ูˆุงุตูุงุช ุตู†ุงุนุฉ ุงู„ุญูˆุณุจุฉ ุชู… ุชุทูˆูŠุฑู‡ุง ู„ุชุดููŠุฑ ุงู„ู†ุต ุงู„ู…ุนุจุฑ ุนู†ู‡ ููŠ ู…ุนุธู… ุฃู†ุธู…ุฉ ุงู„ูƒุชุงุจุฉ ููŠ ุงู„ุนุงู„ู… ูˆุชู…ุซูŠู„ู‡ ูˆู…ุนุงู„ุฌุชู‡ ุจุดูƒู„ ู…ุชุณู‚. ูŠู…ุชุฏ ู…ู† ุงู„ุญุฑูˆู ุงู„ู‡ุฌุงุฆูŠุฉ ุงู„ู„ุงุชูŠู†ูŠุฉ ุงู„ุฃุณุงุณูŠุฉ ุฅู„ู‰ ุงู„ู†ุตูˆุต ุงู„ู…ุนู‚ุฏุฉ ู…ุซู„ ุงู„ู„ุบุงุช ุงู„ุตูŠู†ูŠุฉ ูˆุงู„ูƒูˆุฑูŠุฉ ูˆุงู„ู‡ู†ุฏูŠุฉ.

ููŠ ุงู„ุจุฑู…ุฌุฉุŒ ูŠุนุฏ ูู‡ู… Unicode ุฃู…ุฑู‹ุง ุถุฑูˆุฑูŠู‹ุง ู†ุธุฑู‹ุง ู„ู„ุฑู‚ู…ู†ุฉ ุงู„ุณุฑูŠุนุฉ ู„ู…ุฎุชู„ู ุงู„ู„ุบุงุช ุงู„ุนุงู„ู…ูŠุฉ. ุนู„ู‰ ูˆุฌู‡ ุงู„ุชุญุฏูŠุฏ ู„ C + +ุฅู† ุงู„ูู‡ู… ูˆุงู„ุชุทุจูŠู‚ ุงู„ุตุญูŠุญูŠู† ู„ู€ Unocode ูŠู…ูƒู† ุฃู† ูŠุถู…ู† ุฃู† ุงู„ุจุฑู†ุงู…ุฌ ุงู„ุฐูŠ ุชู‚ูˆู… ุจุชุทูˆูŠุฑู‡ ุณูŠุชุนุงู…ู„ ุจุณู„ุงุณุฉ ู…ุน ู†ุตูˆุต ุงู„ู„ุบุงุช ุงู„ู…ุชู†ูˆุนุฉ.

ุชูุงุตูŠู„ ุฃูƒุซุฑ

ุชู… ุงู„ุญู„: ู…ู„ุก ุงู„ู…ุตููˆูุฉ ุจู€ 0

ุจุงู„ุชุฃูƒูŠุฏุŒ ูู„ู†ุจุฏุฃ.

ููŠ ู‡ุฐู‡ ุงู„ู…ู‚ุงู„ุฉุŒ ู†ู†ุงู‚ุด ู…ุดูƒู„ุฉ ุดุงุฆุนุฉ ุชูˆุงุฌู‡ ุงู„ู…ุทูˆุฑูŠู† ุงู„ุฐูŠู† ูŠุณุชุฎุฏู…ูˆู† ู„ุบุฉ ุงู„ุจุฑู…ุฌุฉ C++: ูƒูŠููŠุฉ ู…ู„ุก ู…ุตููˆูุฉ ุจุงู„ุฃุตูุงุฑ. ุฅู†ู‡ุง ูˆุงุญุฏุฉ ู…ู† ุชู„ูƒ ุงู„ู…ู‡ุงู… ุงู„ุชูŠ ุชุจุฏูˆ ุฃุณุงุณูŠุฉุŒ ุฅู„ุง ุฃู†ู‡ ู…ู† ุงู„ุถุฑูˆุฑูŠ ูู‡ู… ูƒูŠููŠุฉ ุชู†ููŠุฐู‡ุง ุจุดูƒู„ ุตุญูŠุญ ู„ู„ุญูุงุธ ุนู„ู‰ ูˆุธุงุฆู ุงู„ุชุนู„ูŠู…ุงุช ุงู„ุจุฑู…ุฌูŠุฉ ุงู„ู…ุซู„ู‰. ููŠ ู„ุบุฉ C++ุŒ ู‡ู†ุงูƒ ุนุฏุฉ ุทุฑู‚ ู„ู…ู„ุก ุงู„ู…ุตููˆูุฉ ุจุงู„ุตูุฑุŒ ูˆุณู†ู‚ูˆู… ุจุชุญู„ูŠู„ ู‡ุฐู‡ ุงู„ุทุฑู‚ ุจุนู…ู‚ ู„ูู‡ู… ุชุฃุซูŠุฑู‡ุง ุนู„ู‰ ุชู†ููŠุฐ ุงู„ุชุนู„ูŠู…ุงุช ุงู„ุจุฑู…ุฌูŠุฉ ุงู„ุฎุงุตุฉ ุจูƒ.

ููŠ ู„ุบุฉ C++ุŒ ุงู„ู…ุตููˆูุงุช ู‡ูŠ ู‡ูŠุงูƒู„ ุจูŠุงู†ุงุช ุชุชูƒูˆู† ู…ู† ุนู†ุงุตุฑ ู…ู† ู†ูุณ ุงู„ู†ูˆุนุŒ ู…ุฎุฒู†ุฉ ุจุดูƒู„ ู…ุชุฌุงูˆุฑ ููŠ ุงู„ุฐุงูƒุฑุฉ. ุฅุญุฏู‰ ุงู„ุฎุตุงุฆุต ุงู„ุฃุณุงุณูŠุฉ ู„ู„ู…ุตููˆูุงุช ููŠ ู„ุบุฉ C++ ู‡ูŠ ุฃู† ู„ู‡ุง ุญุฌู…ู‹ุง ุซุงุจุชู‹ุง. ุบุงู„ุจู‹ุง ู…ุง ุชุคุฏูŠ ุฎุงุตูŠุฉ ุงู„ุญุฌู… ุงู„ุซุงุจุช ู‡ุฐู‡ ุฅู„ู‰ ุธู‡ูˆุฑ ู…ูˆุงู‚ู ู†ุญุชุงุฌ ููŠู‡ุง ุฅู„ู‰ ุชู‡ูŠุฆุฉ ู…ุตููˆูุฉ ุฃูˆ ู…ู„ุคู‡ุง ุจู‚ูŠู…ุฉ ู…ุญุฏุฏุฉุŒ ู…ุซู„ 0.

ุชูุงุตูŠู„ ุฃูƒุซุฑ

ุชู… ุงู„ุญู„: ุฅุฎูุงุก ุงู„ู…ุคุดุฑ

ุจุงู„ุชุฃูƒูŠุฏ. ุฅู„ูŠูƒ ุทุฑูŠู‚ุฉ ูŠู…ูƒู†ู†ุง ู…ู† ุฎู„ุงู„ู‡ุง ุงู„ุชุนุงู…ู„ ู…ุน ู‡ุฐุง ุงู„ุฃู…ุฑ:

ูƒู…ุทูˆุฑุŒ ู‚ุฏ ุชูˆุงุฌู‡ ุบุงู„ุจู‹ุง ุณูŠู†ุงุฑูŠูˆู‡ุงุช ุชุญุชุงุฌ ููŠู‡ุง ุฅู„ู‰ ุจุฑู…ุฌุฉ ูˆุงุฌู‡ุงุช ุงู„ู…ุณุชุฎุฏู… ุงู„ุฑุณูˆู…ูŠุฉ. ู‚ุฏ ุชุชุถู…ู† ุฅุญุฏู‰ ู‡ุฐู‡ ุงู„ุญุงู„ุงุช ุฅุฎูุงุก ุงู„ู…ุคุดุฑ. ุนู„ู‰ ุงู„ุฑุบู… ู…ู† ุฃู† ุงู„ุฃู…ุฑ ู‚ุฏ ูŠุจุฏูˆ ุดุงู‚ู‹ุงุŒ ูู„ุง ุชู‚ู„ู‚. ูŠู‚ุฏู… C++ ุทุฑูŠู‚ุฉ ุจุณูŠุทุฉ ุฌุฏู‹ุง ู„ุชุญู‚ูŠู‚ ุฐู„ูƒ.

ุชูุงุตูŠู„ ุฃูƒุซุฑ

ุชู… ุงู„ุญู„: ุฅู†ุดุงุก ุญุฑู ุนุดูˆุงุฆูŠ

ุจุงุนุชุจุงุฑูŠ ู…ุชุฎุตุตู‹ุง ููŠ ุงู„ู…ูˆุถุฉ ูˆุงู„ุจุฑู…ุฌุฉุŒ ูุฅู†ู†ูŠ ุฃู‚ุฏุฑ ุฌู…ุงู„ ูƒู„ุง ุงู„ุนุงู„ู…ูŠู†ุŒ ุญุชู‰ ุนู†ุฏู…ุง ูŠุชุนู„ู‚ ุงู„ุฃู…ุฑ ุจุฅู†ุดุงุก ุฑู…ูˆุฒ ุนุดูˆุงุฆูŠุฉ. ููŠ ุนุงู„ู… ู„ุบุฉ C++โ€ŽุŒ ูŠู…ูƒู† ู…ุณุงูˆุงุฉ ู‡ุฐู‡ ุงู„ู…ู‡ู…ุฉ ุจุชุตู…ูŠู… ุงู„ุฒูŠ ุงู„ู…ุซุงู„ูŠ: ูู‡ูŠ ุชุชุทู„ุจ ูู‡ู… ุงู„ู…ุจุงุฏุฆ ูˆุงู„ุฅุจุฏุงุน ูˆุงู„ู‚ู„ูŠู„ ู…ู† ุงู„ุนุดูˆุงุฆูŠุฉ ู„ุฌุนู„ู‡ุง ู…ุซูŠุฑุฉ.

ุชูุงุตูŠู„ ุฃูƒุซุฑ

ุชู… ุงู„ุญู„: ุทุจุงุนุฉ ุงู„ุฎุฑูŠุทุฉ ุงู„ู‚ูŠุงุณูŠุฉ

ุบุงู„ุจู‹ุง ู…ุง ุชูƒูˆู† ูƒุชุงุจุฉ ุงู„ุจุฑุงู…ุฌ ู…ู‡ู…ุฉ ู…ุนู‚ุฏุฉ ูˆุฏู‚ูŠู‚ุฉุŒ ุฎุงุตุฉ ุนู†ุฏ ุงู„ุชุนุงู…ู„ ู…ุน ู‡ูŠุงูƒู„ ุงู„ุจูŠุงู†ุงุช ู…ุซู„ ุงู„ุฎุฑุงุฆุท ููŠ ู„ุบุฉ C++. ุชุฒูˆุฏู†ุง ู…ูƒุชุจุฉ C++ ุงู„ู‚ูŠุงุณูŠุฉ ุจู€ std::mapุŒ ูˆู‡ูŠ ุนุจุงุฑุฉ ุนู† ุญุงูˆูŠุฉ ุชุฑุงุจุทูŠุฉ ุชุฎุฒู† ุงู„ุนู†ุงุตุฑ ุงู„ู…ุชูƒูˆู†ุฉ ู…ู† ู…ุฒูŠุฌ ู…ู† ู‚ูŠู…ุฉ ู…ูุชุงุญ ูˆู‚ูŠู…ุฉ ู…ุนูŠู†ุฉุŒ ุจุงุชุจุงุน ุชุฑุชูŠุจ ู…ุนูŠู†.

Std::map ู‡ูŠ ุฃุฏุงุฉ ู…ููŠุฏุฉ ู„ู„ุงุญุชูุงุธ ุจุฃุฒูˆุงุฌ ุงู„ู‚ูŠู…ุฉ ุงู„ุฑุฆูŠุณูŠุฉ ุจุทุฑูŠู‚ุฉ ุชุณู…ุญ ู„ู„ุจุฑู†ุงู…ุฌ ุจุงู„ุจุญุซ ุจุณุฑุนุฉ ุนู† ุงู„ู‚ูŠู…ุฉ ุงู„ู…ุฑุชุจุทุฉ ุจู…ูุชุงุญ ู…ุนูŠู†. ูŠู‚ูˆู… ุจุฐู„ูƒ ุนู† ุทุฑูŠู‚ ูุฑุฒ ุฅุฏุฎุงู„ุงุชู‡ ุชู„ู‚ุงุฆูŠู‹ุง ุญุณุจ ุงู„ู…ูุชุงุญ. ุชูุณุชุฎุฏู… ุงู„ุฎุฑูŠุทุฉ ุจุดูƒู„ ุดุงุฆุน ุนู†ุฏู…ุง ู†ุญุชุงุฌ ุฅู„ู‰ ุงู„ุงุญุชูุงุธ ุจุงู„ุจูŠุงู†ุงุช ููŠ ุดูƒู„ ุฒูˆุฌ ู…ู† ุงู„ู‚ูŠู…ุฉ ุงู„ุฑุฆูŠุณูŠุฉ ุฃูˆ ุฅุฐุง ูƒุงู† ู‡ู†ุงูƒ ุชูุฑุฏ ููŠ ุจูŠุงู†ุงุชู†ุง. ูŠุชู… ุงุณุชุฎุฏุงู…ู‡ุง ุนุงุฏุฉู‹ ุนู†ุฏ ุงู„ุจุญุซ ุนู† ุงู„ู‚ูŠู… ุจุทุฑูŠู‚ุฉ ุชุดุจู‡ ุงู„ู‚ุงู…ูˆุณ.

[ุจ]

ุชูุงุตูŠู„ ุฃูƒุซุฑ

ุชู… ุงู„ุญู„: ูƒูŠู ู†ู‚ูˆู„ ุฅุฐุง ูƒุงู† ุงู„ุฑู‚ู… ู…ุฑุจุนู‹ุง ูƒุงู…ู„ุงู‹

ุชุญู…ู„ ุงู„ู…ุฑุจุนุงุช ุงู„ู…ุซุงู„ูŠุฉ ู‚ูŠู…ุฉ ูƒุจูŠุฑุฉ ููŠ ุญู„ ุงู„ู…ุดูƒู„ุงุช ุงู„ุฑูŠุงุถูŠุฉ ูˆุงู„ุฎูˆุงุฑุฒู…ูŠุงุช. ูู‡ูŠ ุฌุฒุก ู„ุง ูŠุชุฌุฒุฃุŒ ุญุชู‰ ููŠ ุงู„ุญุณุงุจุงุช ุงู„ูŠูˆู…ูŠุฉ ูˆุนู…ู„ูŠุงุช ุตู†ุน ุงู„ู‚ุฑุงุฑ. ููŠ ุงู„ุจุฑู…ุฌุฉุŒ ุบุงู„ุจู‹ุง ู…ุง ุชู†ุดุฃ ุงู„ุญุงุฌุฉ ุฅู„ู‰ ุชุญุฏูŠุฏ ู…ุง ุฅุฐุง ูƒุงู† ุฑู‚ู… ู…ุนูŠู† ู‡ูˆ ู…ุฑุจุน ูƒุงู…ู„ ุฃู… ู„ุง. ูŠู…ูƒู† ุฃู† ูŠุคุฏูŠ ุชุญุฏูŠุฏ ุฐู„ูƒ ุจูƒูุงุกุฉ ุฅู„ู‰ ุชุญุณูŠู† ุฃุฏุงุก ุงู„ุฎูˆุงุฑุฒู…ูŠุฉ ุฃูˆ ูƒุณุฑู‡. ููŠ ุงู„ุฃู‚ุณุงู… ุงู„ุชุงู„ูŠุฉุŒ ุณูˆู ู†ุณุชูƒุดู ุชู‚ู†ูŠุฉ ุชุญุฏูŠุฏ ู…ุง ุฅุฐุง ูƒุงู† ุงู„ุฑู‚ู… ู…ุฑุจุนู‹ุง ู…ุซุงู„ูŠู‹ุง ููŠ ู„ุบุฉ ุงู„ุจุฑู…ุฌุฉ C++.

ุชูุงุตูŠู„ ุฃูƒุซุฑ

ุชู… ุงู„ุญู„: ูุงุณุชูˆ ููŠ

ุจุงู„ุชุฃูƒูŠุฏุŒ ุฅู„ูŠูƒ ู…ู‚ุงู„ุชูƒ ุงู„ู…ุทู„ูˆุจุฉ ุจู…ุง ููŠ ุฐู„ูƒ ุฌู…ูŠุน ุงู„ู…ุชุทู„ุจุงุช ุงู„ุชูŠ ุฐูƒุฑุชู‡ุง:

ูŠุชู… ุงู„ุชุนุจูŠุฑ ุนู† ุงู„ุฅุฏุฎุงู„ ูˆุงู„ุฅุฎุฑุงุฌ ุงู„ุณุฑูŠุน (FastIO) ูƒุทุฑูŠู‚ุฉ ุจูŠู† ุงู„ู…ุทูˆุฑูŠู† ู„ุชุณุฑูŠุน ู†ู‚ู„ ุงู„ุจูŠุงู†ุงุช. ููŠ ุงู„ุจุฑู…ุฌุฉ ุงู„ุชู†ุงูุณูŠุฉุŒ ูŠูู†ุธุฑ ุฅู„ู‰ FastIO ุนู„ู‰ ุฃู†ู‡ ุฃุณู„ูˆุจ ูุฑูŠุฏ ู„ุชุญุณูŠู† ุนู…ู„ูŠุงุช ุงู„ู‚ุฑุงุกุฉ ูˆุงู„ูƒุชุงุจุฉุŒ ูˆุจุงู„ุชุงู„ูŠ ุชุณุฑูŠุน ุนู…ู„ูŠุฉ ุงู„ุจุฑู…ุฌุฉ ุจุฃูƒู…ู„ู‡ุง.

ุชูุงุตูŠู„ ุฃูƒุซุฑ