Tôi có các hàm khác nhau với hai đối số int (tôi tự viết cả hàm và mã gọi). Tôi sợ gây nhầm lẫn thứ tự tranh luận trong một số cuộc gọi.C++: sử dụng loại an toàn để phân biệt các kiểu đối số int2
Làm cách nào tôi có thể sử dụng loại an toàn để trình biên dịch cảnh báo cho tôi hoặc báo lỗi cho tôi nếu tôi gọi hàm có chuỗi đối số sai (tất cả đối số là int)?
tôi đã cố gắng typedefs: typedef không kích hoạt bất kỳ cảnh báo trình biên dịch hoặc lỗi:
typedef int X; typedef int Y;
void foo(X,Y);
X x; Y y;
foo(y,x); // compiled without warning)
Bạn có thể tìm thấy một cái gì đó như thế này hữu ích: http://calumgrant.net/units/units.html –