So, the only difference between a struct and a class in C++ is default visibility?

As far as my understanding goes, they both can have objects/functions of all visibility types. But for a struct, they are public by default, and for a class: private.

Are there some other differences between these two? Especially something that professional programmers are supposed to be wary of?
2 answers 2