C++ QString对缓冲区溢出安全吗?
据我所知,的Qt文档并未涉及此主题。C++ QString对缓冲区溢出安全吗?,c++,qt,C++,Qt,据我所知,的Qt文档并未涉及此主题。 任何人都可以详细说明这一点?QString为您希望包含的数据动态分配内存,因此不会发生溢出 尽管如果您试图使用QString::at(int position)或类似方法访问其边界以外的字符串数据,仍有可能导致程序崩溃。QString会为您希望包含的数据动态分配内存,因此不会发生溢出 尽管如果您试图使用QString::at(int位置)或类似方法访问超出其边界的字符串数据,仍有可能导致程序崩溃。您问了一个错误的问题:没有库代码可以避免缓冲区溢出。您可以以任
任何人都可以详细说明这一点?
QString
为您希望包含的数据动态分配内存,因此不会发生溢出
尽管如果您试图使用
QString::at(int position)
或类似方法访问其边界以外的字符串数据,仍有可能导致程序崩溃。QString
会为您希望包含的数据动态分配内存,因此不会发生溢出
尽管如果您试图使用
QString::at(int位置)
或类似方法访问超出其边界的字符串数据,仍有可能导致程序崩溃。您问了一个错误的问题:没有库代码可以避免缓冲区溢出。您可以以任何方式滥用任何数据结构。当您正确地使用库代码,并且假设它没有bug时,当然,您将不会受到缓冲区溢出的影响。但是,当您正确地编写每一个非常低级的C代码时,您也将如此
问的正确问题是:可以使用<代码> QStult或其他C++容器类来帮助<强> > <强>避免由于愚蠢错误导致的缓冲区溢出。对但是,归根结底,您需要了解缓冲区溢出是如何发生的,并相应地审核您的代码,无论您使用什么库。
您问了一个错误的问题:没有库代码可以避免缓冲区溢出。您可以以任何方式滥用任何数据结构。当您正确地使用库代码,并且假设它没有bug时,当然,您将不会受到缓冲区溢出的影响。但是,当您正确地编写每一个非常低级的C代码时,您也将如此问的正确问题是:可以使用<代码> QStult或其他C++容器类来帮助<强> > <强>避免由于愚蠢错误导致的缓冲区溢出。对但是,归根结底,您需要了解缓冲区溢出是如何发生的,并相应地审核您的代码,无论您使用什么库