Well, yes and no. ![]()
You, personally, know that you can create a .h file in a certain directory and Visual Studio will magically compile it. As a professed non-C++ user, I selected “Add code to project” from the editor menu, an action that seemed intuitive. But at this point I am dealing with a class, not just a .h, so I’m already looking at the documentation with different eyes to yours. What I missed was that the parent class needed to derive from DataTable (or apparently anything other than “none”, which was what I chose as the sample code in the docs contains no references to class). The quote you supply in a different reply below (which I’ll remind you comes from the section regarding the make-up of the .csv file, not the .h) also makes no reference to the DataTable class - just FTableRowBase, which is, frankly, just another meaningless type definition to me.
So you see, the documentation does explain everything to those who have already made UE projects that use C++. But for those of us who plan to use Blueprints for everything but are forced to delve into C++ just to define this structure, this documentation on that topic is insufficient. Seriously, do a search for articles begging for help on this topic and you’ll find a great many, including several that say “That’s the code I’m using but it doesn’t work!” That implies the documentation is incomplete in some regard.
I’ll say it again - I should not need to learn the in’s and out’s of C++ just to create a data structure in a header file, and the editor should not crash if I can’t get it right even though the code compiles. If I want to do more complex things with classes, then I agree absolutely that I must get as much information as possible about C++, and accept that mistakes in the code may compile but cause unstable behaviour when the game itself executes. But the editor should not crash when I’ve not written a single executable line of code in a project that compiles correctly.