Orthodox C++ (sometimes referred as C+) is minimal subset of C++ that improves C, but avoids all unnecessary things from so called Modern C++. It's exactly opposite of what Modern C++ suppose to be.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <stdio.h> | |
#include <stdlib.h> | |
#include <stdint.h> | |
#ifdef _MSC_VER | |
#include <intrin.h> /* for rdtscp and clflush */ | |
#pragma optimize("gt",on) | |
#else | |
#include <x86intrin.h> /* for rdtscp and clflush */ | |
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <type_traits> | |
#include <cstdio> | |
namespace L { | |
template <int n> | |
struct N { | |
static constexpr bool equals(int m) { return m == n; } | |
}; |
Dear C++ library writer,
-
If your library forces me to use
new
all over, I will hate you. -
If your library has types with bogus values, I will hate you.
-
If the documentation for your library gets the terminology of its own domain wrong, I will hate you.
-
If I say "My God, it's full of stars!" when I see the function signatures in your library, I will hate you.