Skip to content
Showing 1-13 of 13 items.
@renovate
Admin 03/05/2021 22:00
Memory layout của một chương trình C/C++

1. Đặt Vấn Đề Khi chúng ta viết 1 chương trình C/C++ , source code của chúng ta sẽ được lưu trong storage, sau đó khi chúng ta compile hệ thống sẽ tạo ra file cài đặt và file này cũng được lưu trong storage. Cuối cùng là quá trình chúng ta run file program, thực chất đây là quá trình chúng ta load chương trình vào Memory và excute. Vậy chương trình được load vào Memory sẽ được structure như thế nào ở...

C++ C/Cpp MayFest
@renovate
Admin 19/06/2021 14:10
Map, Iterator trong C++

Map, Iterator trong C++ I. Iterator: 1. Iterator là gì??? Iterator là một con trỏ được sử dụng để đại diện cho một phần tử nào đó. map<int, string>::iterator it; vector<int>::iterator it; Được sử dụng đại diện cho các biến được trỏ đến để thực hiện các thao tác thêm, sửa, xóa, .. vector<int> vInt; vInt.push_back( 1 ); vector<int>::iterator it = vInt.begin(); Trong trường hợp này...

C++
@renovate
Admin 19/06/2021 14:10
Con trỏ void*

Con trỏ void* 1. Định nghĩa, công dụng Thông thường 1 con trỏ được xác đinh bởi 2 yếu tố: Kiểu dữ liệu mà con trỏ trỏ đến (int, double, ...) xác định phương pháp truy xuất dữ liệu của vùng nhớ được trỏ tới. Địa chỉ vùng nhớ là địa chỉ mà con trỏ trỏ đến. Và câu hỏi đặt ra là có kiểu con trỏ nào mà có thể linh hoạt trỏ tới các đối tượng mà các đối tượng này...

C++
@renovate
Admin 06/10/2021 00:10
Closure, Lambda, Functor trong C++ [Part 1]

Giới thiệu Trong bài post trước về polymorphism using C++ template, một chút cho ai chưa đọc thì đây là một cách tiếp cận mới hơn, giúp code giảm overhead in runtime, hay nói đơn giản là giúp chương trình chạy nhanh hơn (tất nhiên không phải đúng mới mọi trường hợp) khi mà ta loại bỏ overhead dynamic dispatch và dynamic allocation in runtime, thay vào đó những overhead này sẽ được giải quyết vào compile time...

closures Lambda C++