14.02.2017 Views

. Стиллмен, Дж. Грин - Изучаем C#, 2-е издание

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

капитан жив!<br />

^ а Г н и ш<br />

ы ]= » а с :Ш и р *<strong>е</strong> н и я<br />

Вот как нужно было расположить магниты, чтобы получить<br />

на выход<strong>е</strong> поговорку:<br />

а buck begets more bucks<br />

Расшир<strong>е</strong>ния сод<strong>е</strong>ржатся<br />

в прост ранст в<strong>е</strong> им<strong>е</strong>н Upside.<br />

Точка входа находится б п р о ­<br />

ст ранст в<strong>е</strong> им<strong>е</strong>н Sideways.<br />

namespace Upside {<br />

p u b ^ ^ s t a t i ^ c l a s s i t e x ^ n<br />

*^ ^ u b ^ ^ ^ t a ^ ^ v ^ d S e n d ^<br />

3<br />

К ласс Margin расширя<strong>е</strong>т строку пут <strong>е</strong>м<br />

добавл<strong>е</strong>ния м<strong>е</strong>тода SendltQ, который выво -<br />

дит сод<strong>е</strong>ржимо<strong>е</strong> строки на консоль. Тип int<br />

он расширя<strong>е</strong>т при помощи м<strong>е</strong>тода ToPriceQ<br />

возвращающ<strong>е</strong>го знач<strong>е</strong>ни<strong>е</strong> а buck при рав<strong>е</strong>нств<strong>е</strong><br />

ц<strong>е</strong>лой п<strong>е</strong>р<strong>е</strong>м<strong>е</strong>нной X и тог<strong>е</strong> bucks в остальных<br />

случаях.<br />

Точка входа использу<strong>е</strong>т<br />

расшир<strong>е</strong>ния, добавл<strong>е</strong>нны<strong>е</strong><br />

в класс Marqin. Margin.<br />

using Upside;<br />

namespace Sideways {<br />

class Program {<br />

I<br />

рглЬ11с static string Green (this bool b) {<br />

if (b == true)<br />

return "be"<br />

else<br />

return "gets'<br />

\<br />

Зд<strong>е</strong>сь класс Margin расширя<strong>е</strong>т<br />

бул<strong>е</strong>вы п<strong>е</strong>р<strong>е</strong>м<strong>е</strong>нны<strong>е</strong> пут <strong>е</strong>м доявл<strong>е</strong>ния<br />

к ним класса QreenQ-<br />

М<strong>е</strong>тод Green расширя<strong>е</strong>т<br />

класс bool — OH возбраилаem<br />

ст року be, <strong>е</strong>сли бул<strong>е</strong>вская<br />

п<strong>е</strong>р<strong>е</strong>м<strong>е</strong>нная им <strong>е</strong><strong>е</strong>т<br />

»/ знач<strong>е</strong>ни<strong>е</strong> true, и get —<br />

У в случа<strong>е</strong> знач<strong>е</strong>ния false.<br />

666 глава 14

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!