<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>c++ on Emin Fedar | Kişisel Blog</title><link>https://eminfedar.github.io/tags/c++/</link><description>Recent content in c++ on Emin Fedar | Kişisel Blog</description><language>tr-tr</language><lastBuildDate>Fri, 12 Nov 2021 12:00:03 +0000</lastBuildDate><atom:link href="https://eminfedar.github.io/tags/c++/index.xml" rel="self" type="application/rss+xml"/><item><title>C++'ta Multithreaded Geliştirme</title><link>https://eminfedar.github.io/blog/cpp/cpp-multithreaded-atomic-mutex/</link><category>c++</category><category>multithread</category><category>atomic</category><category>mutex</category><pubDate>Fri, 12 Nov 2021 12:00:03 +0000</pubDate><guid>https://eminfedar.github.io/blog/cpp/cpp-multithreaded-atomic-mutex/</guid><description>Bu derste C++ dili üzerinde Atomic ve Mutex kullanarak birden fazla threadi nasıl senkronize olarak çalıştırabiliriz ele aldık.
İyi seyirler.</description></item><item><title>C++11: std::move</title><link>https://eminfedar.github.io/blog/cpp/c++11/c++11-move/</link><category>c++11</category><category>c++</category><pubDate>Wed, 08 Jul 2020 12:00:03 +0000</pubDate><guid>https://eminfedar.github.io/blog/cpp/c++11/c++11-move/</guid><description>Merhabalar, bu yazıda C++11 sürümünde dile eklenmiş std::move keywordünü inceleyeceğiz.
Nasıl kullanılır? std::string a = &amp;#34;selam&amp;#34;; std::string b = &amp;#34;merhaba&amp;#34;; // a = &amp;#34;selam&amp;#34; // b = &amp;#34;merhaba&amp;#34; b = a; // a = &amp;#34;selam&amp;#34; // b = &amp;#34;selam&amp;#34; b = std::move(a); // a = &amp;#34;&amp;#34; // b = &amp;#34;selam&amp;#34; Ne işe yarar? Bir nesneyi taşıyarak başka bir değişkene aktarmaktadır. Normal eşitlemeden farkı ise, nesnenin taşınmasıyla eski değişkene artık ihtiyaç duyulmayan durumlarda kullanılır.</description></item><item><title>C++11: constexpr</title><link>https://eminfedar.github.io/blog/cpp/c++11/c++11-constexpr/</link><category>c++11</category><category>c++</category><pubDate>Thu, 14 May 2020 00:06:03 +0000</pubDate><guid>https://eminfedar.github.io/blog/cpp/c++11/c++11-constexpr/</guid><description>Merhabalar, bu yazıda C++11 sürümünde dile eklenmiş constexpr terimini inceleyeceğiz.
Nedir? constexpr derleme esnasında(compile-time) sonucu belli olan, sabit değer döndüren bir fonksiyon, hatta ifadelerin tanımlanması için kullanılır.
&amp;ldquo;İyi de bunu zaten makrolar yapıyor?&amp;rdquo; diyebilirsiniz. Örneğin #define UZUNLUK 10 gibi. (bu da derleme esnasında bilinen sabit bir değer?)
Veya sabit bir değişkene ihtiyacımız varsa zaten const ile tanımlayabiliyoruz. Örneğin const int UZUNLUK = 10; gibi.
constexpr ise derleme esnasında yapılacak işlemi basit makro kopyala-yapıştırı ve sabit değişken tanımlayabilmenin de ötesine çıkarıp, bu ikisinin birleşerek daha kapsamlı ve dilin kendisine ait bir işlevi olmuş halidir diyebiliriz.</description></item><item><title>C++11: enum class</title><link>https://eminfedar.github.io/blog/cpp/c++11/c++11-enum-class/</link><category>c++11</category><category>c++</category><pubDate>Mon, 16 Mar 2020 12:00:03 +0000</pubDate><guid>https://eminfedar.github.io/blog/cpp/c++11/c++11-enum-class/</guid><description>Merhabalar, bu yazıda C++11 sürümünde dile eklenmiş enum class&amp;lsquo;ı inceleyeceğiz.
Nasıl kullanılır? enum class Araba { TOGG, Tesla, Faraday }; Araba::TOGG; Araba::Tesla; Not: enum + class kelimelerinin birleşmesi değildir, &amp;ldquo;enum class&amp;rdquo; kendi bir keyworddür.
Ne işe yarar? enum class ile enum aynı amaçla yani sabit tanımlı değerler (örneğin haftanın günleri, yıldaki aylar, yazı yaslama seçenekleri (LEFT, CENTER, RIGHT gibi)) oluşturmak için kullanılır.
enum class&amp;lsquo;ın ise normal enum&amp;lsquo;dan farkı var:
enum class&amp;rsquo;lar int, başka bir enum veya başka bir enum class&amp;lsquo;a dönüştürülemezler.</description></item><item><title>C++11: Lambda</title><link>https://eminfedar.github.io/blog/cpp/c++11/c++11-lambda-fonksiyonlar/</link><category>c++11</category><category>c++</category><pubDate>Wed, 11 Mar 2020 00:00:00 +0000</pubDate><guid>https://eminfedar.github.io/blog/cpp/c++11/c++11-lambda-fonksiyonlar/</guid><description>Merhabalar, bu yazıda C++11 sürümünde dile eklenmiş Lambda Fonksiyonları inceleyeceğiz.
Nasıl kullanılır? // Tanım: [&amp;amp;, =, Ek scope değişkenleri] (fonksiyonun parametreleri...) { // Kodlar... } &amp;amp; : Üst scope&amp;rsquo;taki değişkenlerin bizzat kendilerini al. = : Üst scope&amp;rsquo;taki değişkenlerin sadece değerlerini al. &amp;amp; kullanımına örnek:
int a = 5; auto fonksiyon = [&amp;amp;]() { a = 10; std::cout &amp;lt;&amp;lt; a; // 10 }; fonksiyon(); = kullanına örnek:
int a = 5; auto fonksiyon = [=]() { // a = 10; ERROR: expression must be a modifiable lvalue std::cout &amp;lt;&amp;lt; a; // Değerini kullanabiliriz.</description></item><item><title>C++11: auto</title><link>https://eminfedar.github.io/blog/cpp/c++11/c++11-auto/</link><category>c++11</category><category>c++</category><pubDate>Tue, 10 Mar 2020 12:00:03 +0000</pubDate><guid>https://eminfedar.github.io/blog/cpp/c++11/c++11-auto/</guid><description>Merhabalar, bu yazıda C++11 sürümünde dile eklenmiş auto keywordünü inceleyeceğiz.
Nasıl kullanılır? auto a = 10; auto a = &amp;#34;Selam&amp;#34;; auto a = new Araba(&amp;#34;TOGG&amp;#34;); Ne işe yarar? 1. Değişken tipinin derleyici tarafından otomatik tanımlanmasını sağlar: int a = 5; auto b = a; typeid(a) == typeid(b); // true 2. Uzun tip tanımlamalarından kurtarır: class UzunBirSinifAdi {}; // Açık tanım: UzunBirSinifAdi* nesne2 = new UzunBirSinifAdi; // Auto: auto nesne = new UzunBirSinifAdi; typeid(nesne) == typeid(nesne2); // true 3.</description></item></channel></rss>