Мазмунга өтүү

Консолдук долбоор куруу

Программалоо C++ Татаалдыгы 1/5

Сабактын башталышы

Консолдук долбоор куруу

Функцияларды, классты жана STLди бир чыныгы программага бириктирүү

Негизги идея: Чыныгы программа бир чоң код үймөгү эмес. Аны түшүнүктүү аттуу кичине бөлүктөрдөн — функциялардан, класстан жана STL контейнерлеринен — курасың, жана аларды LEGO бөлүктөрүндөй бириктиресиң. Бул темада биз бир толук консолдук тиркемени башынан аягына чейин курабыз.
Сабактын аягында сен:
  • классты, std::vectorду жана функцияларды бир иштеген программага бириктире аласың,
  • даяр C++ консолдук программасын окуп, анын натыйжасын алдын ала айта аласың,
  • main() бардык бөлүктөрдү кантип бириктирерин түшүндүрө аласың.

1. План: кичинекей тапшырма башкаргыч

Биз иштер тизмесин жүргүзгөн кичине программа курабыз. Ал бир нече тапшырманы сактайт, бирин аткарылды деп белгилөөгө уруксат берет, тизмени басып чыгарат жана канчасы бүткөнүн санайт. Иштетилгенде ал муну чыгарат:

--- My Tasks ---
1. [x] Read a book
2. [ ] Walk the dog
3. [ ] Write C++ code
Done: 1 / 3

Ушуга жетүү үчүн үч курулуш блогу керек: бир тапшырма үчүн класс, көп тапшырманы сактаган STL вектору жана ишти аткарган функциялар. Аларды бирден куралы.

2. 1-кадам — класс чиймедей

Класс — бул чийме. Ал маалыматты (объект эмнени билет) жана жүрүм-турумду (объект эмне кыла алат) бириктирет. Биздин Task title менен тапшырма аткарылганын (done) билет жана markDone() аркылуу өзүн аткарылды деп белгилей алат.

class Task {
public:
    std::string title;        // data
    bool done;                // data

    Task(std::string t) {     // constructor: builds a Task
        title = t;
        done = false;
    }

    void markDone() {         // behaviour (a method)
        done = true;
    }

    std::string status() const {
        return done ? "[x]" : "[ ]";
    }
};
  • Конструктор Task(std::string t) тапшырма түзүлгөндө иштеп, баштапкы маанилерди толтурат.
  • markDone() жана status() — бул методдор, класска таандык функциялар.
  • Жабуучу кашаадан кийин чекиттүү үтүрдү унутпа: };

Бул сабакты YourAIZone платформасында улантыңыз

Толук сабакта — толук түшүндүрмө, чыгарылган мисалдар, көп кездешкен каталар, заматта текшерилүүчү тесттер жана ЖИ-репетитор. Конок катары дароо баштаңыз же прогрессти сактоо үчүн аккаунт түзүңүз.

Толук сабакта

  • Толук түшүндүрмө
  • Чыгарылган мисалдар
  • Көп кездешкен каталар жана алардан кантип качуу керек
  • Тест суроолору: 15
  • Тема боюнча суроолорго жооп берген ЖИ-репетитор
  • Окуучу, ата-эне жана мугалим үчүн прогрессти көзөмөлдөө