mirror of
https://github.com/isocpp/CppCoreGuidelines.git
synced 2025-12-18 13:14:40 +03:00
Adding license and readme
This commit is contained in:
41
LICENSE
Normal file
41
LICENSE
Normal file
@@ -0,0 +1,41 @@
|
||||
Copyright (c) Standard C++ Foundation and its contributors
|
||||
|
||||
Standard C++ Foundation grants you a worldwide, nonexclusive, royalty-free,
|
||||
perpetual license to copy, use, modify, and create derivative works from this
|
||||
project for your personal or internal business use only. The above copyright
|
||||
notice and this permission notice shall be included in all copies or
|
||||
substantial portions of the project. This license does not grant permission
|
||||
to use the trade names, trademarks, service marks, or product names of the
|
||||
licensor, except as required for reasonable and customary use in describing
|
||||
the origin of the project.
|
||||
|
||||
Standard C++ Foundation reserves the right to accept contributions to the
|
||||
project at its discretion.
|
||||
|
||||
By contributing material to this project, you grant Standard C++ Foundation,
|
||||
and those who receive the material directly or indirectly from Standard C++
|
||||
Foundation, a perpetual, worldwide, non-exclusive, royalty-free, irrevocable,
|
||||
transferrable license to reproduce, prepare derivative works of, publicly
|
||||
display, publicly perform, and distribute your contributed material and such
|
||||
derivative works, and to sublicense any or all of the foregoing rights to third
|
||||
parties for commercial or non-commercial use. You also grant Standard C++
|
||||
Foundation, and those who receive the material directly or indirectly from
|
||||
Standard C++ Foundation, a perpetual, worldwide, non-exclusive, royalty-free,
|
||||
irrevocable license under your patent claims that directly read on your
|
||||
contributed material to make, have made, use, offer to sell, sell and import
|
||||
or otherwise dispose of the material. You warrant that your material is your
|
||||
original work, or that you have the right to grant the above licenses.
|
||||
|
||||
THE PROJECT IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE PROJECT OR THE USE OR OTHER DEALINGS IN THE
|
||||
PROJECT.
|
||||
|
||||
If you believe that anything in the project infringes your copyright, please
|
||||
contact us at admin@isocpp.org with your contact information and a detailed
|
||||
description of your intellectual property, including a specific URL where you
|
||||
believe your intellectual property is being infringed.
|
||||
|
||||
36
README.md
Normal file
36
README.md
Normal file
@@ -0,0 +1,36 @@
|
||||
# C++ Core Guidelines
|
||||
|
||||
>"Within C++ is a smaller, simpler, safer language struggling to get out."
|
||||
>-- <cite>Bjarne Stroustrup</cite>
|
||||
|
||||
The C++ Core Guidelines are a collaborative effort led by Bjarne Stroustrup, much like the C++ language itself. They are the result of many
|
||||
person-years of discussion and design across a number of organizations. Their design encourages general applicability and broad adoption but
|
||||
they can be freely copied and modified to meet your organization's needs.
|
||||
|
||||
The aim of the guidelines is to help people to use modern C++ effectively. By "modern C++" we mean C++11 and C++14 (and soon C++17). In other
|
||||
words, what would you like your code to look like in 5 years' time, given that you can start now? In 10 years' time?
|
||||
|
||||
The guidelines are focused on relatively higher-level issues, such as interfaces, resource management, memory management, and concurrency. Such
|
||||
rules affect application architecture and library design. Following the rules will lead to code that is statically type safe, has no resource
|
||||
leaks, and catches many more programming logic errors than is common in code today. And it will run fast - you can afford to do things right.
|
||||
|
||||
We are less concerned with low-level issues, such as naming conventions and indentation style. However, no topic that can help a programmer is
|
||||
out of bounds.
|
||||
|
||||
Our initial set of rules emphasize safety (of various forms) and simplicity. They may very well be too strict. We expect to have to introduce
|
||||
more exceptions to better accommodate real-world needs. We also need more rules.
|
||||
|
||||
You will find some of the rules contrary to your expectations or even contrary to your experience. If we haven't suggested you change your
|
||||
coding style in any way, we have failed! Please try to verify or disprove rules! In particular, we'd really like to have some of our rules
|
||||
backed up with measurements or better examples.
|
||||
|
||||
You will find some of the rules obvious or even trivial. Please remember that one purpose of a guideline is to help someone who is less
|
||||
experienced or coming from a different background or language to get up to speed.
|
||||
|
||||
The rules are designed to be supported by an analysis tool. Violations of rules will be flagged with references (or links) to the relevant rule.
|
||||
We do not expect you to memorize all the rules before trying to write code.
|
||||
|
||||
The rules are meant for gradual introduction into a code base. We plan to build tools for that and hope others will too.
|
||||
|
||||
Comments and suggestions for improvements are most welcome. We plan to modify and extend this document as our understanding improves and the
|
||||
language and the set of available libraries improve.
|
||||
Reference in New Issue
Block a user