-
Notifications
You must be signed in to change notification settings - Fork 17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Running list of more terms/concepts we could document in glossary #36
Comments
Terms I collected during recent presentations by @artemp and @joto that deserve glossary entries:
/cc @mapbox/core-tech |
Noticed a definition + context here on why it is important at http://nullprogram.com/blog/2017/10/06/ |
Came up today working on vtquery w/ @springmeyer |
Methods to make code safer and less exploitable - refs http://www.informit.com/articles/article.aspx?p=2036582&seqNum=4 |
Jochen mentioned this in the vtzero tutorial. I didnt know what it meant and found this great resource
@springmeyer totally. I ran into this in Jochen's vtzero tutorials with his example of the |
The glossary is developing quickly into a pretty solid resource for the key terms you'll encounter and need to know while learning C++ at Mapbox. Or when starting to teach colleagues about how we write, deploy, and approach C++ at Mapbox.
While the glossary says explicitly that
It is not intended to be a complete reference on language or syntax terms
, there is much more we can do. This is a ticket to brainstorm additional concepts, terms, and keywords that are potential things to cover in the glossary and related docs.Most of these terms don't need to be defined in the glossary, rather it would be sufficient to simply list them and links to external resources (particularly style guides we support). The overall goal is 1) note they are important to understand for C++ development a mapbox (by their presence), and 2) provide a great resource to learn more about them. We can add extra definitions where our opinions matter.
(Will be editing this in place as I collect ideas)
Key learning concepts
main
function in an executableconst char*
vsstd::string
and how they relate#pragma once
static_cast
,reinterpret_cast
, andconst_cast
. Why to use them rather than c style casesenum
in C++11. Using casts to change between them and integer types<limits>
from the stdlib to know these sizes dynamically-Werror
and very aggressive warnings, even-Weverything
std::exception
. How to catch all types by catchingstd::exception
. Why to catch exceptions byconst&
.std::unique_ptr
vsstd::shared_ptr
std::vector
vsstd::map
vsstd::list
_GLIBCXX_USE_CXX11_ABI
flag on linux and why does it matter?Advanced performance concepts
The text was updated successfully, but these errors were encountered: