I see the misunderstanding here.
Saying Arduino is C++ is a half-truth. If I can code in C++, I can code in Arduino. But just because you can code in ARduino does not mean you can code in C++. Arduino is C++, but it hidden beneath many layers to make things simple. You can't (without enough experience to code in C++) move Arduino code and the supporting Arduino libraries out of the Arduino IDE into another C/C++ compiler. Therefore, it is best just to think of Arduino has a language that LOOKS like C++, but isn't C++.
That means that you cannot use Arduino in an IDE other than the Arduino IDE.
If you want to code C/C++, you can use an IDE like the Segger C/C++ IDE and compiler (a re-branded and re-packaged form of the Rowley Crossworks IDE and compiler).
If you have the file for compiler code already, you can use the ST Link standalone software to upload the code. It doesn't matter what language it was written in or what IDE it was made, as long as it's already compiled it's in machine code so it doesn't matter.
So if all you want is to upload already compiled Arduino code to something other than an Arduino board, you can just use the ST-Link and its standalone software. You don't need the Segger IDE (that's for writing and compiling C/C++ code).