While structures & classes may seem to be very similar in most respects there aren’t many cases when I would suggest you use a structure instead of a class.
A class with public member properties isnt that different from a structure in terms of how your code uses it.
The biggest difference is that for a class you must use new to get a new instance. With a structure you just declare it and use it.
Structures are handy for some things. If you have to read or write a specific binary file format you might use a structure. If you’re going to call some OS API via a declare then structures are useful. And if you’re reading or writing binary data to binary streams via sockets or other communication channels they are useful.
But there are downsides. Since structures are JUST data any methods to manipulate them have to go in a module. Unlike a class you cannot add methods to the structure itself. And so you end up using a very non-OOP style – maybe a module with the structure defined in there along with all the code that manipulates the structure.
Classes allow you to just bundle up the data and code into a single item and all the code that manipulates the class is part of the class – along with any hidden methods it might need that can be completely hidden from the outside world.
If your still using VB style syntax and creating a lot of structures I’d suggest you give using classes a try.
Once you get the hang of it you will appreciate how classes let you organize your code and data in a nice single item.