Câu hỏi liên quan đến Regular cast vs. static_cast vs. dynamic_cast:Kiểu cú pháp đúc C++
Bạn thích kiểu cú pháp nào trong C++?
- C kiểu cú pháp dàn diễn viên:
(int)foo
- C++ - phong cách cast cú pháp:
static_cast<int>(foo)
- constructor cú pháp:
int(foo)
Họ có thể không dịch chính xác các hướng dẫn tương tự (do họ?) nhưng hiệu ứng của chúng phải giống nhau (phải không?).
Nếu bạn chỉ đang truyền giữa các kiểu số tích hợp, tôi thấy cú pháp đúc kiểu C++ quá dài. Là một coder Java cũ, tôi có xu hướng sử dụng cú pháp cast kiểu C thay vào đó, nhưng guru C++ cục bộ của chúng ta nhấn mạnh vào việc sử dụng cú pháp hàm dựng.
Bạn nghĩ sao?
Tôi tự hỏi bạn đã tìm kiếm một đoạn trong mã của bạn bao nhiêu lần công cụ tự động ... – Blindy
@Blindly: nó xảy ra. Tôi đã làm điều đó rồi. Hãy nhớ rằng trong C++, không giống như một số ngôn ngữ khác (Java, C#), bạn thường có thể lập trình mà không có phôi. Mọi diễn viên rõ ràng trong mã của bạn đều là lỗi thiết kế tiềm năng. Việc xác định các phôi trong mã C++ của bạn là một bước quan trọng trong việc tái cấu trúc. Trong C#, tất nhiên nó sẽ vô lý khi tìm kiếm các phôi trong mã - chúng ở khắp mọi nơi! –
@Konrad: Và, tất nhiên, cả Java * và * C# cũng có tương đương 'dynamic_cast' của riêng nó, đó là một dàn diễn viên đặc biệt. – Puppy