Posts
Ivan Nikitin
Cancel

Ramblings about internship

Some rambling and thoughts about my summer 2020 Internship This will mainly serve as a time capsule of sorts for myself and a collection of random thoughts on some of the more interesting technica...

C++ notes on constexpr

Intro to constexpr Constant expressions allows us to evaluate expressions at compile time. Kind of like template meta-programming, except that it uses a familiar C++ syntax, so its easier to maint...

Android - Coroutines

What is a coroutine Coroutines are essentially jobs that execute within a thread. Coroutines are suspendable and can switch their context. They are important for thing like network calls without b...

Android - Single Activity Approach

At the android level activities are really a component. They are at the same level as content providers, broadcast receivers and services. They are pretty much the UI facing part of the app. There...

A Tour of C++

Some things I wanted to note down from Bjame Stroustrup’s “A Tour of C++” book. 1.5 Types, Variables and Arithmetic C++ offers a variety of notations for expressing initialization, such as the = ...

C++ some selected core guidelines

The core guidelines have about 496 items. Effective modern C++ has 42, which does not include the other effective books. C++ coding standards has 101 items. Just from these items we have over 600 b...

C++ more on move semantics

Forwarding references represent an lvalue reference if they are initialized by an lvalue and an rvalue reference if they are initialized by an rvalue. Rvalue references are forwarding references if...

C++ notes on move semantics

Imagine we have a vector of integers and an empty vector: std::vector<int> v1{1, 2, 3, 4, 5}; std::vector<int>{}; Now, assign v1 to v2: v2 = v1; So, initially (before the assignme...

C++ quick exploration of threads

Synchronization primitives exist in C++ in the form of: Atomic Mutex Semaphore Memory fence Transactional memory (might come in the future) Considering the following: #include <io...

C++ notes on function and class templates

Consider a function called swap that we can use as follows: calling swap(i, j) places: the value that was in i into j the value that was in j into i swap is a meaning...

Recent Update