Loading video...

Video Failed to Load

Go Home

Why do some developers still prefer C over C++?

79,795 views • 8 months ago •via X (Twitter)

34 Comments

LaurieWired's profile picture
LaurieWired8 months ago

I have…issues with this. Ok, if you want to implement all of the STL features yourself in every single program you make. Wanna vector? Make it yourself. Need to resize your vector? Better work on your own allocator. Not to mention C is *smaller* because it never adapted to the times. If you want to use smart pointers for memory safety, using good RAII practice you literally…can’t in C. Also, I highly recommend writing assembly programs by hand. It’s fun, and interesting. C++ is only “complicated” in the sense that it provides tools for nearly any usecase. If it was less complex, you would be missing core features. I know it’s a bit of a ramble, and I’m not trying to be mean. But I hear this logic commonly spread through programming circles and it’s extremely misleading.

Low Level's profile picture
Low Level8 months ago

At least from a security review perspective C++ is so much more difficult to audit. The constant expansion of context with inheritance and changing between classes makes reasoning about the code much more complicated vs C

Filip Jerzy Pizło's profile picture
Filip Jerzy Pizło8 months ago

Simple: C is easier to read C++ is easier to write If the maintenance of the code will involve more reading than writing then C is better

Furt_Tech's profile picture
Furt_Tech8 months ago

Simple, 'C' is god teir. No bs, pure and it does exactly what you tell it.

Maciej 'sorek' Łoboda's profile picture
Maciej 'sorek' Łoboda8 months ago

The right way of using C++ is to write it like C with hand writing all abstractions yourself. Simple and easy, gives you an edge in scaling project.

(((JReuben1)))'s profile picture
(((JReuben1)))8 months ago

things that C++ got wrong compared to C: exceptions, inheritence

BitcoinIsMySafeWord's profile picture
BitcoinIsMySafeWord8 months ago

C is more safe for small projets. No malloc. No recursive loop. Misra compliance easy. Embedded c can be ultra safe

Dr. IGnatius T Foobar's profile picture
Dr. IGnatius T Foobar8 months ago

C is beautiful. C is elegant. C is the substrate of "good computing." It truly is the language for the ages.

the internets's profile picture
the internets8 months ago

It's not about performance, C and C++ have similar performance and whoever think otherwise is just stupid. It's not about zero-overhead. It's not about "close to the metal" either. In fact both technologies are pretty much the same on all these metrics. It's about language simplicity. C has 32 keywords and is very simple, C++ has more than 80 keywords and is very complex. I personally like both, each have good use-cases.

Null Set's profile picture
Null Set8 months ago

C 😍 C++ 💩

MONGCOLN's profile picture
MONGCOLN8 months ago

I love C and C++. Been away from it for too long developing in .NET. Might do a comeback.

Henry 🜋🏴‍☠️🇧🇷🇮🇱's profile picture
Henry 🜋🏴‍☠️🇧🇷🇮🇱8 months ago

Because you absolutely don't need OOP to make cool stuff that works.

DLCCMind's profile picture
DLCCMind8 months ago

A tip for those wandering in the land between C and C++. I feel you. And the solution is Odin. Excellent language, precisely filling that spot. Been coding for 42 years, mostly C and I can highly recommend Odin. @TheGingerBill made an excellent job.

Luis Miguel Romero's profile picture
Luis Miguel Romero8 months ago

I developed in C, C++ and C#. If I need performance I choose C over C++. If I need more flexibility, fast developing and complex system without critical performance I prefer C# over C++. The complexity of C++ now is insane for me.

Victor C's profile picture
Victor C8 months ago

Yup. C the best! Simple and clean.

skane_eng's profile picture
skane_eng8 months ago

Partly because it is simpler and partly because they're hidebound. Since C++ is nearly a perfect superset of C, you can use those features that are useful and safer than C while ignoring those features of C++ you find problematic or too complicated. Inheritance isn't required

avey_dev's profile picture
avey_dev8 months ago

C++ syntax is awful pOOP

Father Grippa's profile picture
Father Grippa8 months ago

C is much more straightforward and direct. If I needed something more complex and flexible, I would go with D, or Zig, or something like that.

♡lanadelreyslefthood♡'s profile picture
♡lanadelreyslefthood♡8 months ago

literally no one

7on's profile picture
7on8 months ago

Wait, since when does Louis C K code in C?

Reece's profile picture
Reece8 months ago

"You know C is really great. I don't like C++. And yet somehow all the code is C++."

Reece's profile picture
Reece8 months ago

Casey's take. 😂

Grumpy_Old_Man's profile picture
Grumpy_Old_Man8 months ago

C is a scalpel C++ is a Swiss army chainsaw

John's profile picture
John8 months ago

I prefer a mix!

ImoutoFan's profile picture
ImoutoFan8 months ago

faster compiler

Pfs's profile picture
Pfs8 months ago

Today, there is no need to use c++. c# is just as effective at object oriented programming and the usage of libraries, mind you, the same libraries c++ uses. Usage of C and Assembler on the other hand is critical.

David's profile picture
David8 months ago

@GMusliaj this guy looks like another version of you, but without mustache and older 😬

Sanketh's profile picture
Sanketh8 months ago

While it’s possible to write bad code in both languages (and arguably a bit easier in C++), it’s not inherently true that C++ is slower than C. I’ve been going through the Stockfish codebase, the strongest chess engine in the world which has extremely performance-sensitive paths and searches millions of nodes per second even on consumer hardware. It’s written in C++, yet it clearly rejects the “high-abstraction” style many people associate with C++. Some patterns that stand out: - No heap allocation in hot paths (almost never anywhere critical) - Careful manual memory layout (cache lines, alignment awareness) - Predictable, data-oriented structures - Fixed-size arrays instead of std::vector - STL is used, but selectively — containers that may reallocate are avoided in hot loops because predictability matters more - Little to no if/else branches to avoid branch prediction misses (templates and compile-time polymorphism instead) - No heavy OOP patterns In other words, high-performance C++ isn’t "use every abstraction available", it’s “use only abstractions that compile away”

comonoidal esotericist 🇨🇿🇪🇺🇺🇸🦀's profile picture
comonoidal esotericist 🇨🇿🇪🇺🇺🇸🦀8 months ago

Cause they are stupid. Next question.

nitesh ⟲'s profile picture
nitesh ⟲8 months ago

what’s your go-to language for system-level programming and why? 🖥️

Master.dev (Formerly Frontend Masters)'s profile picture
Master.dev (Formerly Frontend Masters)8 months ago

@nitesh_backdev question for @rtfeldman

SimpleCoffee's profile picture
SimpleCoffee8 months ago

He is missing the main features of C. It is simple enough for a competent person to write a compiler for it. This is important if you manufacture your custom chips and wanted people to use it, your code to last long and minimise differences in implementations.

Poikilos's profile picture
Poikilos8 months ago

C++ isnt actually safe, just gives you conveniences to make things safe... but in the form of increasingly complex and conflicting paradigms over the years.

khode Knight's profile picture
khode Knight8 months ago

I would argue it's more of a hard line thing. Many just prefer it out of ego even though it can be verbose syntactically. But being honest c++ is richer 😅😅

Related Videos

It's the throat Goats, Which you prefer? A B C D
0:44

Sensitive content

It's the throat Goats, Which you prefer? A B C D

FreaksComeOutAtMidnight

144,080 views • 2 years ago