Tôi được dạy string::at
trong trường học, nhưng bằng cách khám phá thư viện chuỗi tôi thấy string::operator[]
, mà tôi chưa bao giờ được hiển thị trước đây.Sự khác biệt giữa string :: at và string :: operator [] là gì?
Tôi hiện đang sử dụng operator[]
và chưa sử dụng at
từ đó, nhưng điểm khác biệt là gì? Dưới đây là một số mẫu mã:
std::string foo = "my redundant string has some text";
std::cout << foo[5];
std::cout << foo.at(5);
Họ là về cơ bản giống về đầu ra, nhưng có một số khác biệt tinh tế tôi không biết?
Bạn hãy thử một tham chiếu cho mỗi? Có một sự khác biệt, mà sẽ khá dễ dàng để phát hiện khi so sánh tài liệu tham khảo. – chris
Chờ, bạn đã quyết định chuyển từ '.at()' sang 'toán tử []' * trước khi * xem xét một cuốn sách hoặc tham chiếu trực tuyến? – us2012
, tôi đọc toán tử [] nhanh hơn, nhưng không biết tại sao ... –