Bởi vì ngay cả cách trở lại khi STL được thiết kế:
đã Có độc đoán tốt hơn đáng kể các thư viện chính xác số nguyên trong C. Chắc chắn họ không chính thức các lớp học, nhưng các cấu trúc họ đã sử dụng vẫn làm công việc. Việc triển khai STL sẽ không thực sự hấp thu nhiều từ những người cần số nguyên chính xác tùy ý, dẫn tôi đến lý do thứ hai của tôi:
Không nhiều người thực sự cần số nguyên chính xác tùy ý. Những người làm, kéo vào thư viện của bên thứ ba. Đối với hầu hết mọi người 32bit longs đã làm công việc trong những ngày đó. Đối với nhiều người, họ vẫn làm. Và hiệu suất là tốt hơn đáng kể. Ngay cả trên một hệ thống không có các hoạt động 64bit, bạn có thể mô phỏng chúng với một vài hướng dẫn và vẫn nhanh hơn đáng kể so với việc thực hiện số nguyên bất kỳ (dù bạn tạo ra bao nhiêu, phần tùy ý và phân bổ đống có khả năng sẽ làm cho nó thêm đắt hơn hai hoạt động số nguyên nhỏ hơn và mang theo thủ công).
Ngoài tất cả những gì nó chỉ đơn giản là đi xuống để Stroustrup đã không cảm thấy nó có đủ hấp dẫn để phù hợp với tầm nhìn của mình về STL.
Tôi nghĩ rằng một câu hỏi hay hơn sẽ là lý do tại sao không có loại tiền thập phân hoặc độ chính xác tùy ý trong STL, vì tôi nghĩ chúng thường là vấn đề, nhưng câu trả lời là như nhau.
Nguồn
2011-11-08 07:16:05
Tôi đoán rằng số học lớn không phải là tầm thường để thực hiện (hiệu quả). – Mysticial
"nhưng chỉ là một câu hỏi là tại sao ngôn ngữ không đi kèm với một ngôn ngữ." Tại sao nên làm thế? Mọi người đều có vấn đề vật nuôi nhỏ của riêng họ, nơi họ nghĩ rằng một số ngôn ngữ nên hỗ trợ X. Nhưng điều đó không có nghĩa là nó nên. Tôi đã lập trình được hơn 20 năm và tôi đã sử dụng chuỗi rất thường xuyên.Tuy nhiên, tôi đã _never_ cần một số nguyên chính xác tùy ý. Đó không phải là để nói rằng đó là một lý do không có. Nhưng nó cho thấy rằng có lẽ câu hỏi là tại sao _should_ thư viện chuẩn C++ có một số nguyên chính xác tùy ý, không phải vì sao nó không. –