Yavuzlar
Ana sayfaTelegram
  • Yavuzlar
  • VulnLab
  • CodinLab
  • 📚EĞİTİM
    • PHP
      • XAMPP kurulumu
      • VS Code Kurulum
      • 1.0 PHP Nedir
      • 1.1 Dosya Oluşturma
      • 1.2 Syntax (Yazım Kuralları)
      • 1.3 PHP'de Echo ve Print
      • 1.4 PHP'deki yorumlar
      • 1.5 PHP Değişkenleri
      • 1.6 Operatörler (Operators)
      • 1.7 Veri Türünü Alma
      • 1.8 PHP'de String
      • 1.9 PHP'de Sabitler
      • 2.0 PHP'de If Else Elseif
      • 2.1 Switch Case
      • 2.2 PHP'de Döngüler
      • 2.3 PHP'de Diziler (Arrays)
      • 2.4 PHP'de Süper Global Değişkenleri
      • 2.5 PHP'de Cookie (Çerez) Ve Session (Oturum) Yöntemleri
      • 2.6 Form işlemleri
    • C++
      • 1.0 Temeller
        • 1.1 Dosya Oluşturma
        • 1.2 Syntax (Yazım Kuralları)
        • 1.3 Yorum Satırları
        • 1.4 C++ Değişkenleri
          • 1.4.1 Değişken Türleri
        • 1.5 Operatörler (Operators)
        • 1.6 Namespace
        • 1.7 Kullanıcı Girdisi (User Input)
        • 1.8 C++ Stringleri (C++ Strings)
        • 1.9 Matematik (Math) Fonksiyonları
        • 1.10 Booleans
        • 1.11 If Else
        • 1.12 Switch
        • 1.13 While Döngüsü
          • 1.13.1 Do While Döngüsü
        • 1.14 For Döngüsü
        • 1.15 Break/Continue
        • 1.16 Diziler
        • 1.17 Structures
        • 1.18 Enums
        • 1.19 References
        • 1.20 Pointers
      • 2.0 Fonksiyonlar
      • 3.0 Sınıflar
        • 3.1 OOP
        • 3.2 Sınıflar ve Objeler
        • 3.3 Sınıf Methodları
        • 3.4 Yapıcılar (Constructors)
        • 3.5 Erişim Belirleyicileri (Access Specifiers)
        • 3.6 Kapsülleme (Encapsulation)
        • 3.7 Inheritance
        • 3.8 Polimorfizm (Polymorphism)
        • 3.9 Dosyalar (Files)
        • 3.10 İstisnalar (Exceptions)
        • 3.11 Tarih ve Zaman (Date and Time)
      • 4.0 Veri Yapıları (Data Structures)
        • 4.1 Veri Yapıları ve STL
        • 4.2 Vektörler (Vectors)
        • 4.3 Listeler (Lists)
        • 4.4 Yığınlar (Stacks)
        • 4.5 Kuyruklar (Queues)
        • 4.6 Deque (Çift Uçlu Kuyruk)
        • 4.7 Küme (Set)
        • 4.8 Maps
        • 4.9 Iterator
        • 4.10 Algoritmalar
  • 🛠️ARAÇLAR
    • Aircrack-ng
    • Airgeddon
    • Arjun
    • BeEF
    • Bettercap
    • Docker
    • Gelişmiş Wireshark Kullanımı (Advanced Wireshark Usage)
    • Google Dorks
    • Hping3
    • John the Ripper
    • Metasploit Framework
    • Netcat
    • Nmap
    • OSINT Framework
    • PEASS-ng
    • Sublist3r
    • XSS Scanner
    • Wireshark
    • ZAP
    • HYDRA
  • 🖥️İŞLETİM SİSTEMLERİ
    • Linux101
    • MBR
  • 🔑KRİPTOLOJİ
    • Dijital Sertifika ve İmzalar
    • Sezar Şifrelemesi
    • Steganografi
    • Veri Şifreleme (Data Encryption)
  • 🔏Network
    • Domain Name Server (DNS)
    • Firewall Nedir? Nasıl Çalışır ?
    • Ortadaki Adam Saldırısı (Man In The Middle Attack)
    • OSI Modeli
    • Sanal Özel Ağlar (VPN)
    • World Wide Web (WWW)
  • 🔐PRIVILEGED
    • Docker Escape
  • 📨Protokoller
    • ARP
    • DHCP
    • FTP
    • HTTP/HTTPS
    • SSH
    • TCP/IP
    • UDP
    • Wİ-Fİ Güvenlik Protokolleri (WEP/WPA/WPA2/WPA3)
  • 💻SİBER TEHDİT İSTİHBARATI
    • Gelişmiş Siber Tehdit İstihbaratı Nedir?
  • 🔒WEB GÜVENLİĞİ
    • 403 ByPass
    • API Güvenliği (API Security)
    • Broken Access Control
    • Bulut Güvenliği (Cloud Security)
    • Command Injection
    • Cross Origin Resource Sharing
    • Cross Site Request Forgery (CSRF)
    • Cyber Kill Chain
    • DDoS Saldırıları
    • File Upload Zafiyeti Nedir?
    • HTTP Request Smuggling
    • Insecure Direct Object Reference (IDOR)
    • Incident Response
    • Local File Inclusion (LFI)
    • NoSQL Injection
    • Pentest 101
    • Race Condition
    • Server Side Request Forgery (SSRF)
    • Server Side Template Injection (SSTI)
    • Spring4Shell
    • Two Factor Authentication Bypass
    • XML External Entity Attack (XEE)
  • 🤖YAPAY ZEKA
    • ChatGPT for Hacking
    • Siber Güvenlik ve Yapay Zeka
    • Yapay Zeka ile Sahte Fotoğraf Tespiti
  • 🌐YAZILIM
    • Düzenli İfadeler (Regular Expressions)
    • Elasticsearch Nedir?
    • Front-end Teknolojileri
    • Golang'da Arayüzler (Interfaces)
    • Go'da Concurrency ve Uygulamaları
    • Güvenli Kodlama (Secure Coding)
    • Java Overloading vs Overriding
    • JSON Web Token (JWT)
    • Material-UI
    • NextJS Nedir?
    • ReactJS Kancalar (Hooks)
    • ReactJS Nedir?
    • Redux Toolkit
    • SOLID Yazılım Geliştirme Prensipleri
    • SQL 101
    • UI / UX Nedir?
    • Veri Taşıma Nedir? (Database Migration)
    • Versiyon Kontrol Sistemleri ve GIT
  • 🔷DİĞER
    • Bug Bounty (Hata Ödülü) Nedir?
    • Popüler Yazılımların Kurulumları
      • Ubuntu Server 24.04 LTS Kurulumu
      • Ubuntu için Güncel Docker Engine Kurlumu
    • Güvenlik Operasyonları Merkezi Nedir?
    • Honeypot (Bal Küpü)
    • IoT Güvenliği Nedir?
    • ShellShock Exploit
    • Yük Dengeleyici (Load Balancer) Nedir?
Powered by GitBook
On this page

Was this helpful?

  1. EĞİTİM
  2. C++
  3. 4.0 Veri Yapıları (Data Structures)

4.2 Vektörler (Vectors)

C++ dilinde vektörler, STL (Standard Template Library) içinde bulunan ve dinamik dizileri temsil eden veri yapılarıdır. Vektörler, sabit boyutlu dizilere kıyasla daha esnek bir yapı sunar, çünkü boyutları gerektiğinde otomatik olarak değiştirilebilir. Bu özellik, geliştiricilere veri yönetimi konusunda büyük bir kolaylık sağlar.

Vektörlerin Temel Özellikleri

  1. Dinamik Boyut: Vektörler, başlangıçta belirli bir boyutta oluşturulabilir, ancak eleman ekledikçe otomatik olarak boyutlarını artırabilirler. Bu, sabit boyutlu dizilerde yaşanan bellek sorunlarını ortadan kaldırır.

  2. Rasgele Erişim: Vektörler, diziler gibi elemanlara rasgele erişim sağlar. Bu, belirli bir indekste bulunan elemana doğrudan ulaşmayı mümkün kılar.

  3. Veri Tipi: Vektörler, farklı veri türlerini tutabilir. Kullanıcı, oluştururken hangi veri tipini kullanacağını belirleyebilir.

Vektörlerin Kullanımı

C++'ta vektörler, #include <vector> ifadesi ile kullanılmaya başlanır. Aşağıda vektörlerin temel kullanımını gösteren örnekler bulunmaktadır.

Vektör Oluşturma ve Eleman Ekleme

#include <iostream>
#include <vector>

int main() {
    // Vektör oluşturma
    std::vector<int> sayilar;

    // Eleman ekleme
    sayilar.push_back(5);
    sayilar.push_back(10);
    sayilar.push_back(15);

    // Elemanları yazdırma
    for (int i = 0; i < sayilar.size(); i++) {
        std::cout << "Eleman " << i << ": " << sayilar[i] << std::endl;
    }

    return 0;
}

Vektör Boyutunu Öğrenme ve Eleman Silme

#include <iostream>
#include <vector>

int main() {
    // Vektör oluşturma
    std::vector<int> sayilar = {1, 2, 3, 4, 5};

    // Vektör boyutunu yazdırma
    std::cout << "Vektör boyutu: " << sayilar.size() << std::endl;

    // Son elemanı silme
    sayilar.pop_back();

    std::cout << "Silindikten sonra vektör boyutu: " << sayilar.size() << std::endl;

    return 0;
}

Vektör Sıralama

Vektörlerdeki elemanları sıralamak için std::sort fonksiyonu kullanılabilir.

#include <iostream>
#include <vector>
#include <algorithm>

int main() {
    // Vektör oluşturma
    std::vector<int> sayilar = {4, 2, 5, 1, 3};

    // Sıralama
    std::sort(sayilar.begin(), sayilar.end());

    // Sıralı elemanları yazdırma
    std::cout << "Sıralı Vektör: ";
    for (int sayi : sayilar) {
        std::cout << sayi << " ";
    }

    return 0;
}

Sonuç

C++ vektörleri, dinamik boyutlandırma ve rasgele erişim imkanı gibi özellikleri sayesinde, verileri yönetmek için oldukça etkili bir araçtır. Vektörler, yazılım geliştirme sürecini kolaylaştırırken, esneklik ve performans sağlar. Bu nedenle, C++ ile programlama yaparken vektörleri sıkça kullanmak, yazılım geliştiriciler için önemli bir avantajdır.

Previous4.1 Veri Yapıları ve STLNext4.3 Listeler (Lists)

Last updated 5 months ago

Was this helpful?

📚