Tôi biết có nhiều cách để so sánh trường hợp bỏ qua liên quan đến việc lặp qua chuỗi hoặc good one trên SO cần một thư viện khác. Tôi cần phải đặt điều này trên các máy tính khác có thể chưa được cài đặt. Có cách nào để sử dụng các thư viện chuẩn để làm điều này không? Ngay bây giờ tôi chỉ đang làm ...So sánh chuỗi không phân biệt chữ hoa chữ thường C++
if (foo == "Bar" || foo == "bar")
{
cout << "foo is bar" << endl;
}
else if (foo == "Stack Overflow" || foo == "stack Overflow" || foo == "Stack overflow" || foo == "etc.")
{
cout << "I am too lazy to do the whole thing..." << endl;
}
Điều này có thể cải thiện đáng kể khả năng đọc và khả năng sử dụng mã của tôi. Cảm ơn đã đọc đến đây.
Nghiêm túc? Ngay cả khi không có cách tích hợp, bạn có thể * dễ dàng * viết một hàm để làm điều đó thay vì brute buộc mỗi so sánh riêng lẻ. Có gì sai khi lặp qua các chuỗi? Đó là những gì bất kỳ thư viện bạn sẽ sử dụng sẽ làm gì. –
stricmp có sẵn ở mọi nơi. – arx
Thư viện chuẩn nào có sẵn tùy thuộc vào phiên bản trình biên dịch C++ nào bạn định sử dụng để biên dịch nhị phân của mình. Ví dụ, C++ 0x có hỗ trợ regex. Đối với các trình biên dịch cũ hơn, bạn có thể sử dụng stricmp. – Alan