A fine question, but a little too broad (IMO). That's called the scope-resolution operator, and your search term for further learning is scope. All those names (cout, member functions of A) are defined in scopes and you have to resolve the scope (that is, tell the compiler where to look) with ::.
The simplest difference between the two is that "->" dereferences a pointer before it goes to look at that objects fields, function etc. whereas "." doesn't dereference first. Use "->" when you have a pointer to an object, and use "." when you're working with the actual instance of an object. Another equivalent way of wrinting this might be to use the dereferencing "*" on the pointer first and ...
I found this line of a code in a class which I have to modify: ::Configuration * tmpCo = m_configurationDB;//pointer to current db and I don't know what exactly means the double colon prepended to...
This is called the three-way comparison operator. According to the P0515 paper proposal: There’s a new three-way comparison operator, <=>. The expression a <=> b returns an object that compares <0 if a < b, compares >0 if a > b, and compares ==0 if a and b are equal/equivalent. To write all comparisons for your type, just write operator<=> that returns the appropriate category type: Return ...
95 .cpp is the recommended extension for C++ as far as I know. Some people even recommend using .hpp for C++ headers, just to differentiate from C. Although the compiler doesn't care what you do, it's personal preference.
What does this symbol mean? AirlineTicket::AirlineTicket ()@PaulR Not everyone who arrives upon this question is looking to learn C++. I, for example, just happened to be skimming some C++ code and wanted to get the general idea of what the program is doing and needed a quick reference :)
So called "pointers" to members in C++ are more like offsets, internally. You need both such a member "pointer", and an object, to reference the member in the object. But member "pointers" are used with pointer syntax, hence the name. There are two ways you can have an object at hand: you have a reference to the object, or you have a pointer to the object. For the reference, use .* to combine ...
Arquivos .cpp são os arquivos que contém os fontes das implementações em C++. Arquivos .h são chamados de headers, usado para extrair a declaração de funções, classes e outras declarações da implementação, permitindo reuso. Nesta resposta eu falo sobre o processo de compilação de arquivos C. Em termos gerais, é muito semelhante ao do C++ por conter pré-processamento do arquivo ...