std::string::empty
#include <string>
bool empty() const noexcept;
Kiểm tra xem chuỗi có rỗng hay không, tức là không chứa bất kỳ ký tự nào.
Tham số
Không có tham số
Giá trị trả về
true
- Nếu chuỗi rỗng (không chứa ký tự nào).
false
- Nếu chuỗi không rỗng (chứa ít nhất một ký tự).
Đặc điểm
empty()
tương đương với việc kiểm trasize() == 0
hoặclength() == 0
, nhưngempty()
thường được ưu tiên hơn vì nó rõ ràng và dễ đọc hơn.empty()
không thay đổi nội dung của chuỗi.empty()
chỉ kiểm trasize()
, không quan tâm đếncapacity()
. Một chuỗi có thể cócapacity()
lớn hơn 0 nhưng vẫnempty()
nếusize()
bằng 0.- Hàm
empty()
được chỉ định lànoexcept
(từ C++11), nghĩa là nó được đảm bảo không ném ra ngoại lệ. - Độ phức tạp O(1) - thời gian thực hiện hàm
empty()
là hằng số, không phụ thuộc vào độ dài của chuỗi. empty()
thường được sử dụng để:- Kiểm tra xem một chuỗi có rỗng hay không trước khi thực hiện các thao tác khác.
- Điều kiện dừng trong các vòng lặp hoặc thuật toán xử lý chuỗi.
- Xác minh tính hợp lệ của dữ liệu đầu vào.
Ví dụ
#include <iostream>
#include <string>
int main() {
std::string str1 = "";
std::string str2 = "Hello";
if (str1.empty()) {
std::cout << "str1 is empty.\n";
} else {
std::cout << "str1 is not empty.\n";
}
if (str2.empty()) {
std::cout << "str2 is empty.\n";
} else {
std::cout << "str2 is not empty.\n";
}
return 0;
}
Các hàm liên quan
clear | Xóa tất cả các ký tự khỏi chuỗi, làm cho chuỗi trở thành rỗng |
size | Trả về số lượng ký tự hiện có trong chuỗi |
length | Trả về số lượng ký tự hiện có trong chuỗi |