Toán Tử ép Kiểu (casting) Trong C++
Có thể bạn quan tâm
- Cơ bản về C++
- Giới thiệu C++
- C++ là gì ?
- Cài đặt C++
- Cú pháp C++ cơ bản
- Comment
- Kiểu dữ liệu
- Các kiểu biến
- Phạm vi biến
- Hằng (Constant/Literal)
- Các kiểu Modifier
- Lớp lưu trữ
- Toán tử
- Vòng lặp
- Lệnh IF, Else, Switch
- Hàm
- Number
- Mảng (Array)
- Chuỗi (String)
- Con trỏ
- Tham chiếu
- Date & Time
- Input/Output cơ bản
- Cấu trúc dữ liệu (Struct)
- Hướng đối tượng trong C++
- Lớp & Đối tượng
- Tính kế thừa
- Nạp chồng (Overloading)
- Tính Đa hình
- Tính trừu tượng
- Tính bao đóng
- Interface
- Hoạt động C++ nâng cao
- File I/O và Stream
- Xử lý ngoại lệ
- Bộ nhớ động
- Namespace
- Template
- Preprocessor (Bộ tiền xử lý)
- Xử lý tín hiệu
- Đa luồng (Multithread)
- Lập trình Web
- Tài liệu tham khảo C++
- Thư viện STL
- Thư viện C++ chuẩn
- Tài liệu C++ tham khảo
- 12 bài tập C phổ biến
- 140 bài tập C có giải hay nhất
- 100 bài tập C++ có giải hay nhất
Toán tử ép kiểu (một cast) trong C++ là một toán tử đặc biệt mà làm một kiểu dữ liệu này biến đổi thành kiểu dữ liệu khác. Toán tử ép kiểu là một toán tử một ngôi và có cùng độ ưu tiên như bất kỳ toán tử một ngôi nào khác trong C++.
Cú pháp được sử dụng thường xuyên của toán tử ép kiểu trong C++ là:
(kieu_du_lieu) bieu_thucỞ đây, kieu_du_lieu là kiểu dữ liệu bạn muốn. Dưới đây là một số toán tử ép kiểu được hỗ trợ bởi C++:
const_cast<kieu_du_lieu> (bieu_thuc): Toán tử const_cast được sử dụng để ghi đè const và/hoặc volatile. Kiểu dữ liệu bạn muốn phải giống như kiểu dữ liệu nguồn ngoại trừ sự sửa đổi của các thuộc tính const hoặc volatile trong một cast. Dạng ép kiểu này thao tác thuộc tính const của đối tượng đã truyền: hoặc được thiết lập hoặc gỡ bỏ.
dynamic_cast<kieu_du_lieu> (bieu_thuc): Toán tử dynamic_cast trong C++ thực hiện một ép kiểu tại runtime mà thẩm tra tính hợp lệ của cast. Nếu cast không thể được tạo ra, cast này thất bại và biểu thức ước lượng là null. Một toán tử dynamic_cast thực hiện các cast trên các kiểu đa hình và có thể ép một con trỏ A* thành một con trỏ B* chỉ khi đối tượng đang được trỏ tới thực sự là một đối tượng B.
reinterpret_cast<kieu_du_lieu> (bieu_thuc): Toán tử reinterpret_cast trong C++ thay đổi một con trỏ tới bất kỳ kiểu con trỏ khác. Nó cũng cho phép ép kiểu từ con trỏ tới một kiểu integer và ngược lại.
static_cast<kieu_du_lieu> (bieu_thuc): Toán tử static_cast trong C++ thực hiện một cast không có tính đa hình. Ví dụ, nó có thể được sử dụng để ép kiểu một con trỏ lớp cơ sở thành một con trỏ lớp kế thừa.
Tất cả toán tử ép kiểu trên sẽ được sử dụng trong khi làm việc với lớp và đối tượng. Bây giờ, bạn thử ví dụ sau để hiểu toán tử ép kiểu đơn giản trong C++. Copy và paste chương trình C++ sau trong tệp test.cpp, sau đó biên dịch và chạy chương trình:
#include <iostream> using namespace std; main() { double a = 15.65653; float b = 9.02; int c ; c = (int) a; cout << "Dong 1: Gia tri cua (int)a la: " << c << endl ; c = (int) b; cout << "Dong 1: Gia tri cua (int)b la: " << c << endl ; return 0; }Chạy chương trình C++ trên sẽ cho kết quả như hình sau:
Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS. Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:
Các bạn có thể mua thêm khóa học JAVA CORE ONLINE VÀ ỨNG DỤNG cực hay, giúp các bạn vượt qua các dự án trên trường và đi thực tập Java. Khóa học có giá chỉ 300K, nhằm ưu đãi, tạo điều kiện cho sinh viên cho thể mua khóa học.
Nội dung khóa học gồm 16 chuơng và 100 video cực hay, học trực tiếp tại https://www.udemy.com/tu-tin-di-lam-voi-kien-thuc-ve-java-core-toan-tap/ Bạn nào có nhu cầu mua, inbox trực tiếp a Tuyền, cựu sinh viên Bách Khoa K53, fb: https://www.facebook.com/tuyen.vietjack
Follow facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi.
Bài học C++ phổ biến khác tại vietjack.com:
- Cú pháp C++ cơ bản
- Các kiểu Modifier trong C++
- Toán tử trong C++
- Vòng lặp trong C++
- Lệnh IF, Else, Switch trong C++
- Mảng (Array) trong C++
- Chuỗi (String) trong C++
- Con trỏ trong C++
- Date & Time trong C++
160 bài học ngữ pháp tiếng Anh hay nhất
155 bài học Java tiếng Việt hay nhất
100 bài học Android tiếng Việt hay nhất
247 bài học CSS tiếng Việt hay nhất
197 thẻ HTML cơ bản
297 bài học PHP
101 bài học C++ hay nhất
97 bài tập C++ có giải hay nhất
208 bài học Javascript có giải hay nhất
Học cùng VietJack
Từ khóa » Cách ép Kiểu Dữ Liệu Trong C++
-
4.2 Ép Kiểu Dữ Liệu - Khóa Học C++
-
Ép Kiểu Trong C++ - Techacademy
-
Ép Kiểu Trong C++ - Học Lập Trình C++ Online - Viettuts
-
Ép Kiểu Int Sang Float Và Ngược Lại Trong C/C++ - Lập Trình Không Khó
-
Ép Kiểu Tường Minh Trong C++ (Explicit Type Conversion In C++)
-
Ép Kiểu Ngầm định Trong C++ (Implicit Type Conversion In C++)
-
Bài 15: Ép Kiểu Dữ Liệu Trong Lập Trình C - Khuê Nguyễn
-
Sự Thật Về Ép Kiểu Trong C, C++ Là Gì? Cách ép Kiểu ... - Tiên Kiếm
-
Phương Pháp ép Kiểu Dữ Liệu Trong C++
-
Ép Kiểu Trong C
-
Ép Kiểu Trong C | 64 Bài Học Lập Trình C Hay Nhất
-
Ép Kiểu Trong C - Hoclaptrinh
-
Lập Trình C++ - Ép Kiểu Trong C++ - YouTube
-
[Lập Trình C++ Cơ Bản] Bài 3: Kiểu Dữ Liệu, Hằng Và Biến. Câu Lệnh ...