TGViewer
Сіпласпластик Сіпласпластик @cpplastic · 740 subscribers
Post #237 1.76K
Мене аж тіпає, коли пишуть C/C++, поєднуючи дві різні мови, відмінні не тільки концептуально, але й синтаксично (так!). Щось я не бачу, щоб писали C/Objective-C або QBasic/Visual Basic десь у вакансіях.

З очевидних відмінностей є, наприклад, автоматичне приведення в сішці void-вказівника void* до вказівника на будь-який інший тип, наприклад, int*. А неявні касти в результаті приносять значно більше болю, ніж необхідність робити це явно. В Haskell немає неявних приведень типу, і жоден розробник з десяти у світі від цього не вмер.

Але у зворотному боці я також отримав декілька WTF-моментів. Наприклад, в C++ можна написати
int i = 0; 
(i = 10) = 42;

і воно це схаває, бо в C++ operator= повертає lvalue, але в C — ні, тож там це не спрацює. Це ж буквально один з пунктів, на які я жалівся у статті. Неприємно здивований.

Це з цікавого. Кажуть: «Майже будь-який код на C може бути скомпільований як C++» — проте не кажуть, що це ще не гарантує його коректність. Наприклад, в C sizeof('a') повертає розмір int, а в C++ — розмір char 🥱

Короч, між C та C++ ще безліч «прикольних» відмінностей. Аж на цілу пдф-ку назбиралося.
  • 👍 14
  • 😁 1
  • 🤓 1
More from @cpplastic
  1. Oct 9, 2026Зацініть рівень української служби підтримки. Жодних пояснень, заяв, перепитувань: «Не тре…
  2. Oct 7, 2026Post #543
  3. Oct 2, 2026Щось не злетіло з self-driving cars у автовиробників, еге ж? А стільки галасу було. Ну зат…
  4. Sep 24, 2026Ух, яку ж класну доповідь подивився: «Scott Jenson: Are we really going to use the same De…
  5. Sep 23, 2026Post #540
  6. Sep 21, 2026«Порекламую» вам український сайт, який мені дуже подобається. Взяв слово в лапки, бо як і…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →