Деякі люди думають, що ініціалізація в C++ — це складна тема. Зовсім ні! Ось ці 4️⃣ (так, чотири!) статті чудово пояснюють всі або майже всі її види: раз, два, три, чотири. (Особисто я визнав поразку на середині третьої).
Що ж робити? Як користуватися інструментом, яким ви не повністю володієте та розумієте? Та так само, як ви щодня робите у побуті!
Візьмемо фен, наприклад. Його можна вимкнути та вимкнути. Працює він від електроструму, тож базові знання вам підказують, що, мабуть, не варто кидати його у ванну з водою. Також всередині ймовірно є якийсь мотор з лопатками, тож інтуїція має підказати вам не пхати туди нічого, що могло б заблокувати їхній рух. Впевнений, це навіть в інструкції написано.
Але ок, фен не так складно влаштований. Ось пральна машина — це вже серйозний винахід. Там треба і підʼєднати правильно, і транспортувальні болти витягти, і вирівняти, щоб не хиталася — засетапити короч. А потім кожну сесію треба правильно інітити, щоб воно давало очікуваний результат. При цьому аргументи для сесії треба перевіряти перед запуском, ну, щоб вони не важили забагато там та взагалі були очікуваного типу. І шо, хіба треба 15 років вчитися, щоб користуватися? Та нє — мануала на декілька сторінок достатньо ж.
Ось і з C++ та сама історія. Чи корисно знати всі нюанси, що описані в стандарті мови? Ну, наче так. А чи обовʼязково їх всі знати? Та наче ні.
Натомість достатньо не робити хєрню (як загальна порада теж діє). Наприклад, не використовувати неініціалізовані змінні. Взагалі: сумніваєшся — або ще раз перевір, або перепиши так, щоб для сумнівів не лишалося місця.
Думаю, набуття досвіду — це, між іншим, і є зменшення кількості сумнівів.
Post #285
395
- 👍 12
- 😁 1