[Tiếng Việt] Thủ thuật với C++ - Vì sao nên dùng const khi truyền tham số
Giờ chúng ta có một ví dụ về hàm tính tổng hai số:
Với việc gọi tham số như thế này, chương trình sẽ tạo thêm hai biến tạm từ hai biến trên. Và điều đó đảm bảo rằng việc dùng biến tạm sẽ không ảnh hưởng đến giá trị hai biến chính. Tuy nhiên, điều đó khiến chương trình sẽ tốn nhiều bộ nhớ hơn. Nếu như vậy để giải quyết, chúng ta sẽ phải dùng cách truyền tham vấn (reference) vào:
Vấn đề về bộ nhớ đã được giải quyết vì dùng tham vấn sẽ truy vấn đến địa chỉ biến. Nhưng vấn đề phát sinh sẽ xảy ra là giả sử như chúng ta lỡ thay đổi kết quả của tham số này? Như vậy biến a và b sẽ không giữ được giá trị ban đầu. May thay chúng ta có một cách đó là dùng const:
Như vậy const đã giúp chúng ta giải quyết vấn đề, vừa dùng tham vấn nhưng vẫn đảm bảo kết quả không bị thay đổi. Có một lưu ý rằng việc dùng const không giúp tăng tốc độ (câu trả lời của Billy ONeal - hiện tại là lập trình viên của Microsoft) nhưng giúp tránh việc tiêu tốn hiệu năng (vì chương trình phải tốn 1 khoảng thời gian nhỏ để khai báo và copy giá trị của hai biến), việc này giúp chương trình gọn gàng hơn rất nhiều. Tốn kém nhỏ nhưng giá trị hiệu quả lớn.
Comments
Comments are closed