What's the difference between 'console', 'smfl,... ??

I've seen these terms in a few posts but i couldn't find anything on the tutorial. I am new to c++, just started learning a few days ago :)

Could someone please explain in plain english what are these (console, smfl, opengl,..) and when and why would you use each? Thanks so much!!!
The following is very general and probably arguable in many aspects; nonetheless, not a bad mental starting point.

The console is the basic command line interface. Guessing you're using windows, it's that window that you type in one command at a time. Looks kind of like this picture:

http://www.fileguru.com/images/b/flash_to_video_console_multimedia_video-6079.gif
You would use the console when you wanted to run a programme. Typing in the name of the programme starts it. If you write a programme that doesn't create any fancy windows and so forth, it'll run in one of these, you'll type the input into this, and the text output will be displayed here. If you do make a fancy window, you can still make use of the console for input/output - it's up to you.

SFML is a set of code that makes it easier for you to do some things in C++. Instead of having to write your own code to handle graphics/sound/etc., someone else has written it for you, and you ask the SFML libraries to do it through functions that are a lot simpler than if you did it all yourself. The advantage is that you don't have to understand how to make your hardware do these things; the downside is that you lose some fine control and you can't do anything you like - only what's available.

openGL is a set of APIs; it's just a standard, a document saying that there will be a function called this and it will make this happen and another function called that and it will make that happen and so on. The functions it describes are generally to do with graphics. It is then up to other people to actually write the code to make it happen. Other people have written this code for you, to work with various graphics hardware and operating systems, so you don't have to write it yourself. You just have to call the functions they have written. In theory, the functions they have written do what the openGl document says they will.

Last edited on
Topic archived. No new replies allowed.