Where can I find out what I need to know about C ++ compilers?

I'm just starting to learn C ++, so goodbye to the novelty of this question. I also ask for your condescension as to how open this question was. I think this can be broken, but I think this information belongs to the same place.

(FYI - I mainly work with the QT SDK and mingw32-make right now, and I seem to have configured them correctly for my machine.)

I knew that in a language controlled by the compiler, a lot of things, I heard about the directives of the precompiler, but it seems that someone can write books with different C ++ compilers and their corresponding parameters. In addition, there are commands that seem to precede make (e.g. qmake (this is something only in QT)).

I would like to know if there is any place that gives me an overview of which compilers are there and what their various options are. I would also like to know how each of them views the Makefile (does it seem that there is a difference in syntax between them?).

If there is no website regarding β€œEverything you need to know about C ++ compilers but were afraid to ask,” what would be the best way to study the answers to these questions?

+3
source share
3 answers

" " : . , , , , , , . , , make.

(, , ):

  • ( )
  • ( , FPU...)
  • ( ..)
  • ( , / , , ..).
  • (exe, , ...)
  • C/++ ( , C, - ...)


, , , , . , "" , (gcc, , ), . C , , , .., - - - , .


, ( C/++), , .
,    )
   ) , .. . "", , make , , , , " script/bat".
( ), , make/nmake, Apache Ant; , (?) make.
, . , make , , , , . , , include ( make ), c , , , , obj , . make , , , (, , make).

: - , . :

  • C/++. , , , , , , ; (btw , ALL_CAPS_AND_UNDERSCORES) C, .
  • , (#IFDEF ..)

, , pre-processor C-, , , (, , , )

... ... , , . It is a very good idea to try and get a broad picture of the framework etc. but this can be overdone, , , , "" , " !".

+17

, ++ . ( Microsoft)

, , , , , , , . GCC ms-cl

, make .

+3

.

C++ : , , ; , , .

, , , . .

, . C ++.

C++ . C, ++ C.


C++ make . makefile ++, "" (), , , / . Makefiles , , .. .. - .

, make " ", (IDE) . . .

Regarding training: choose a specific problem to solve and dive. The target platform (Linux / Windows / etc.) And the problem space will significantly reduce the choice. Which one you choose is often related to other considerations, such as working for a particular company or participating in a team. C ++ has something like 95% commonality among all its tastes. Learn any of them well, and learning the next is a piece of cake.

+3
source

Source: https://habr.com/ru/post/1723526/


All Articles