mirror of
https://github.com/isocpp/CppCoreGuidelines.git
synced 2024-03-22 13:30:58 +08:00
Add a little to the "Don't use non-standard extensions discussion."
This commit is contained in:
parent
ca22f65232
commit
b3e6c82ade
|
@ -421,7 +421,13 @@ This is a set of guidelines for writing ISO Standard C++.
|
|||
##### Note
|
||||
|
||||
There are environments where extensions are necessary, e.g., to access system resources.
|
||||
In such cases, localize the use of necessary extensions and control their use with non-core Coding Guidelines.
|
||||
In such cases, localize the use of necessary extensions and control their use with non-core Coding Guidelines. If possible, build interfaces that encapsulate the extensions so they can be turned off or compiled away on systems that do not support those extensions.
|
||||
|
||||
Extensions often do not have rigorously defined semantics. Even extensions that
|
||||
are common and implemented by multiple compilers may have slightly different
|
||||
behaviors and edge case behavior as a direct result of *not* having a rigorous
|
||||
standard definition. With sufficient use of any such extension, expected
|
||||
portability will be impacted.
|
||||
|
||||
##### Note
|
||||
|
||||
|
@ -14113,4 +14119,3 @@ Alternatively, we will decide that no change is needed and delete the entry.
|
|||
\[Sutter04\]: H. Sutter. Exceptional C++ Style (Addison-Wesley, 2004).
|
||||
* <a name="Taligent94"></a>
|
||||
\[Taligent94\]: Taligent's Guide to Designing Programs (Addison-Wesley, 1994).
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user