Saya membaca jawaban untuk ini pertanyaan dan menemukan bahwa sebenarnya ada metode yang disebut length()
untuk std::string
(saya selalu digunakan size()
). Apakah ada alasan khusus untuk menggunakan metode ini di std::string
kelas? Saya membaca MSDN dan CppRefernce, dan mereka tampaknya menunjukkan bahwa tidak ada perbedaan antara size()
dan length()
. Jika begitu, bukankah itu membuat lebih membingungkan bagi pengguna kelas?
265
size()
(Jika saya pernah menggunakan kelas non-string), tetapi sebagian besar waktu saya gunakanlength()
ketika bekerja dengan string biasa.std::string=> std::bacsic_string<char> count of char
std::wstring => std::basic_string<wchar_t> count of wchar_t.
Ruby sama saja, btw, menawarkan keduanya
#length
dan#size
sebagai sinonim untuk jumlah item dalam array dan hash (C ++ hanya melakukannya untuk string).Minimalis dan orang-orang yang percaya "seharusnya ada satu, dan idealnya hanya satu, cara yang jelas untuk melakukannya" (seperti yang dibacakan oleh Zen Python), saya kira, sebagian besar setuju dengan keraguan Anda, @Naveen, sementara penggemar Perl's " Ada lebih dari satu cara untuk melakukannya "(atau sintaks SQL dengan bazillion opsional" kata-kata bising "memberikan sekian banyak bentuk sintaksis yang identik untuk mengekspresikan satu konsep) tidak diragukan lagi akan mengeluh bahwa Ruby, dan terutama C ++, hanya saja tidak melangkah terlalu jauh cukup dalam menawarkan redundansi sinonim seperti ;-).
sumber
Saat menggunakan alat praktik pengkodean (LeetCode) tampaknya ukuran () lebih cepat dari panjang () (meskipun pada dasarnya diabaikan)
sumber
panjang string == berapa banyak bit yang dimiliki string, ukuran == ukuran bit-bit itu, Dalam string keduanya sama jika editor mengalokasikan ukuran karakter adalah 1 byte
sumber