All of What You discussed is correct up to maximum extent. But the missing thing is

The Main power of C++ is
1. Its ability to Use the oops concepts which is missing in C. ( this feature will help us in creating the Good design apporach)
2. We can use the pointers in C++, which is missing in Java.