Sigh...please read my post properly before replying...
"Well, C and C++ are considered the same language but there are some differences beside the obvious use of OOP in C++..."
That statement is still incorrect, no matter how you emphasize it. They are nowhere near considered the same language, and there are many
differences. Their standards move at different paces, and disregarding even OOP, there are a surprisingly large amount of things that C supports and allows that C++ does not, and vice versa. Not to mention, a wealth of different keywords (and meanings for them), with new types that are exclusive to C or C++. C++ started out before the first ANSI C standard; it is in many ways not a superset of the language, because it wasn't wholly built upon it. In many ways, it was influenced by the success of C as a programming language, and borrowed its syntax, but it was developed alongside it, and separately.
To keep saying that they are almost the same is just not true. There are many code samples that will compile differently (or not at all) in either language. Perhaps try to elaborate on your point so that you don't confuse newcomers? That's the reason people are calling you on it.
Anyway, I think learning OOP straight off the bat is going to leave many beginners feeling lost. I've seen it on the courses I have taken where some have withdrawn because they jumped the gun with procedural programming. One has enough on their plate with loops, control statements, data types, opening and closing files without throwing OOP in to the mix. Yes, its an important concept, but one thing at a time, no?
I agree with this, but it might depend on the teacher. My teacher for C++ was terrible
. She didn't know what she was doing, and was teaching C with Classes. Everything went in a class, even things that held no state; they should have been free functions in a namespace, but she didn't teach namespaces. We had char arrays for everything, because she didn't teach the standard templates. We got ripped off in our education. As a result, my code was absolutely horrible, and it took me many years of finally swearing off classes because I didn't need them, before I could learn how important they were.
Often, going without a feature and doing things the hard way is the best way to learn to appreciate a feature.