30/09/2018, 17:38
Sự khác biệt giữa std::string và char * và khi nào thì chọn một trong hai?
Với một bài toán liên quan đến chuỗi, cách sử dụng std::string
và char *
có điểm gì khác biệt không?
Em dùng std::string
cảm thấy dễ và đơn giản hơn char *
. Và cũng chưa biết ưu điểm của char * trong trường hợp này là gì.
Mong các bác tư vấn giúp!
Bài liên quan
string nhiều hàm hỗ trợ hơn
char* gọn nhẹ hơn std::string. Nhiều khi cần xử lý đơn giản, chỉ cần truyền vào hàm như thế này:
std::string là 1 class, trong đó ngoài lưu trữ 1 char* được cấp phát động ra thì còn lưu trữ thêm nhiều thuộc tính khác như capacity, length, … và một số member function khác. Khi biên dịch thì nó phải include cả thư viện vào.
String là 1 class nên nó bá hơn nhiều, nhiều hàm hỗ trợ, nhưng dung lượng lớn, char thì ít hàm hơn, tiết kiệm bộ nhớ
String là , char* là
Tùy tình hình mà mình sử dụng