Giới thiệu về Lập trình C++

Có sẵn các ngôn ngữ: English
Thời gian đọc 3 min read
c++

Giới thiệu về C++

C++ là một ngôn ngữ lập trình đa năng mạnh mẽ được tạo ra bởi Bjarne Stroustrup như một phần mở rộng của ngôn ngữ lập trình C.

Tại sao nên học C++?

C++ vẫn là một trong những ngôn ngữ lập trình được sử dụng rộng rãi nhất trên thế giới vì nhiều lý do thuyết phục:

  • Hiệu suất: C++ cung cấp hiệu suất và hiệu quả cao
  • Kiểm soát: Thao tác bộ nhớ trực tiếp và kiểm soát cấp thấp
  • Tính đa năng: Được sử dụng trong phát triển trò chơi, hệ điều hành, trình duyệt, v.v.
  • Nền tảng: Hiểu về C++ giúp việc học các ngôn ngữ khác dễ dàng hơn

Ví dụ cú pháp cơ bản

Đây là một chương trình “Hello, World!” đơn giản bằng C++:

cpp
#include <iostream>

int main() {
    std::cout << "Xin chào, Thế giới!" << std::endl;
    return 0;
}

Các tính năng chính của C++

Lập trình hướng đối tượng

C++ hỗ trợ bốn nguyên tắc chính của OOP:

  1. Tính đóng gói
  2. Tính kế thừa
  3. Tính đa hình
  4. Tính trừu tượng

Ví dụ về một lớp đơn giản:

cpp
class HinhChuNhat {
private:
    double chieuDai;
    double chieuRong;
    
public:
    // Hàm khởi tạo
    HinhChuNhat(double d, double r) : chieuDai(d), chieuRong(r) {}
    
    // Phương thức tính diện tích
    double dienTich() {
        return chieuDai * chieuRong;
    }
};

Quản lý bộ nhớ

C++ cho phép bạn kiểm soát trực tiếp việc cấp phát và giải phóng bộ nhớ:

cpp
#include <iostream>

int main() {
    // Cấp phát bộ nhớ động
    int* arr = new int[5];
    
    // Sử dụng bộ nhớ
    for (int i = 0; i < 5; i++) {
        arr[i] = i * 10;
        std::cout << arr[i] << " ";
    }
    
    // Giải phóng bộ nhớ đã cấp phát
    delete[] arr;
    
    return 0;
}

Templates (Khuôn mẫu)

Templates trong C++ cho phép lập trình tổng quát:

cpp
template <typename T>
T max(T a, T b) {
    return (a > b) ? a : b;
}

int main() {
    // Hoạt động với các kiểu dữ liệu khác nhau
    std::cout << max(10, 20) << std::endl;      // int
    std::cout << max(10.5, 20.5) << std::endl;  // double
    std::cout << max('A', 'B') << std::endl;    // char
    
    return 0;
}

Tính năng của C++ hiện đại

C++ hiện đại (C++11 trở đi) đã giới thiệu nhiều tính năng làm cho ngôn ngữ mạnh mẽ hơn và dễ sử dụng hơn:

  • Suy luận kiểu tự động (Auto)
  • Biểu thức Lambda
  • Con trỏ thông minh (Smart pointers)
  • Vòng lặp dựa trên phạm vi (Range-based for loops)
  • Ngữ nghĩa di chuyển (Move semantics)

Ví dụ về các tính năng C++ hiện đại:

cpp
#include <iostream>
#include <vector>
#include <memory>
#include <algorithm>

int main() {
    // Suy luận kiểu tự động
    auto x = 10;
    
    // Vector với danh sách khởi tạo
    std::vector<int> numbers = {1, 2, 3, 4, 5};
    
    // Vòng lặp dựa trên phạm vi
    for (const auto& num : numbers) {
        std::cout << num << " ";
    }
    
    // Biểu thức Lambda
    std::for_each(numbers.begin(), numbers.end(), [](int n) {
        std::cout << n * 2 << " ";
    });
    
    // Con trỏ thông minh
    std::shared_ptr<int> ptr = std::make_shared<int>(100);
    
    return 0;
}

Kết luận

C++ tiếp tục phát triển và duy trì tính phù hợp mặc dù đã hơn 40 năm tuổi. Sự kết hợp giữa hiệu suất, khả năng kiểm soát và các tính năng hiện đại làm cho nó trở thành một ngôn ngữ tuyệt vời cho nhiều ứng dụng, từ lập trình hệ thống đến phát triển trò chơi.

Cho dù bạn là người mới bắt đầu hay một lập trình viên có kinh nghiệm muốn mở rộng kỹ năng của mình, việc học C++ sẽ cung cấp cho bạn những hiểu biết quý giá về cách máy tính hoạt động và cách xây dựng phần mềm.