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.
Latency Comparison Numbers (~2012) | |
---------------------------------- | |
L1 cache reference 0.5 ns | |
Branch mispredict 5 ns | |
L2 cache reference 7 ns 14x L1 cache | |
Mutex lock/unlock 25 ns | |
Main memory reference 100 ns 20x L2 cache, 200x L1 cache | |
Compress 1K bytes with Zippy 3,000 ns 3 us | |
Send 1K bytes over 1 Gbps network 10,000 ns 10 us | |
Read 4K randomly from SSD* 150,000 ns 150 us ~1GB/sec SSD |
QVariantMap xmlStreamToVariant(QXmlStreamReader &xml, const QString &prefix = QLatin1String("."), const int maxDepth = 1024) | |
{ | |
if (maxDepth < 0) { | |
qWarning() << QObject::tr("max depth exceeded"); | |
return QVariantMap(); | |
} | |
if (xml.hasError()) { | |
qWarning() << xml.errorString(); | |
return QVariantMap(); |
I recommend to consider microG instead. It's officially promoted in the changelog forum post. Additionally, it doesn't bundle Google products and should provide better secrecy. However, it might not include all features. Check out the guide from the official forum.
In contrast, this guide is based on MindTheGapps, as mentioned in LineageOS wiki. Before, we used OpenGApps, but that is not maintained anymore.
%:include <stdio.h> | |
main(void) ??< | |
char _vls<:4:>=<%1,3,5,7%>; | |
printf("val:%d ??/n", 1??(_vls??) ); | |
??> | |
/* | |
Above code equals to following code. | |
Prints 3. | |
*/ |
A couple of weeks ago I played (and finished) A Plague Tale, a game by Asobo Studio. I was really captivated by the game, not only by the beautiful graphics but also by the story and the locations in the game. I decided to investigate a bit about the game tech and I was surprised to see it was developed with a custom engine by a relatively small studio. I know there are some companies using custom engines but it's very difficult to find a detailed market study with that kind of information curated and updated. So this article.
Nowadays lots of companies choose engines like Unreal or Unity for their games (or that's what lot of people think) because d
use bevy::{prelude::*, asset::LoadState}; | |
fn main() { | |
App::build() | |
.add_resource(GameState::Loading) | |
.add_resource(PendingAssets(Vec::new())) | |
.add_plugins(DefaultPlugins) | |
.add_startup_system(load_some_assets.system()) | |
.add_system(loading.system()) | |
.add_system(loaded.system()) |
I bought M1 MacBook Air. It is the fastest computer I have, and I have been a GNOME/GNU/Linux user for long time. It is obvious conclusion that I need practical Linux desktop environment on Apple Silicon.
Fortunately, Linux already works on Apple Silicon/M1. But how practical is it?
- Two native ports exist.