Hello,
I have studied C and am just starting to study OOP in C++. I have read lesson 12 on Intro to Classes.

It seems that functions in C and classes in C++ are quite similar.
Both can carry out operations within themselves and the code of classes and functions can be reused. Both classes and functions may also require input data in order to carry out their operations right? So, what is the big difference between functions and classes?

Constructors are used for initializing variables. So if we have variables that do not need initialization, does that mean we need not have a constructor? Are there other uses for the constructor besides initialization?

I have also heard from many programming students that OOP programming is much more difficult than structured programming e.g C. Is this true?

Please reply......thanks!