is there a way to have a world randomly generated when the game starts
Your generating events will have to be in the "Start of layout" event of the "world layout".
and then to keep that world and its info around (yes a save game)?
You could have used webstorage, but the plugin is broken/not up to date apparently.
One solution might be to export your datas to a website, but this might be too complicated for a beginner.
The way I imagine my game is in a manner not that unsimilar to Civilization, a scrolling flat world.
Tiles, right ?
Have a square sprite containing your textures in a single animation.
Create instances of this sprite, covering your layout.
You can use the random function to set which animation frame to display.
Check the capx
Also can I use construct to port the game from HTML5 to say C++ easily?
I doubt it.
In this case, use Construct-Classic which exports .exe. (but still you won't obtain C++ sources).
In the end, if you want to use C++ than you are defeating Construct's purpose, so I'd suggest you to make sure of what you really want to do and documentate yourself about what JS and C++ really are.
Anyway, for you and Genghis, I'd suggest starting with easier projects (to get used to C2), and reading some more tutorials/practicing more with C2/CC.