sizeof(std::wstring)是固定的32,说明std::wstring是一个普通的C++类,而且和Delphi不一样,没有负方向,因为那个需要编译器的支持 std::wstring ws=L"kkkk"; int il=ws.length(); int ia=sizeof(ws); int ib=sizeof("dddd"); int ic=sizeof(L"kkkk");输出为 il=4,ia=32,ib=5,ic=10 为什么ia=32 ? wstring到底对L"kkkk"做了什么?...
也就是说sizeof(string)和字符串的长度是无关的,在一个系统中所有的sizeof(string)是一个固定值,这个和编译器相关,string字符串是存储在堆上,这个属于动态分配的空间,对于别的整形浮点型数据类型则没有这个问题。 参考: https://stackoverflow.com/questions/42270152/why-does-sizeof-operator-on-a-stdstring-...
有问题找客服