阅读量:71
在C++中,assign函数通常用于替换容器中的元素。如果发生异常,assign函数可能会导致未定义的行为或者程序崩溃。为了在assign函数中处理异常,可以使用try-catch块捕获异常。
例如:
#include
#include
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5};
try {
vec.assign(3, 10); // 替换前3个元素为10
} catch (const std::exception& e) {
std::cout << "Exception caught: " << e class="hljs-built_in">what() << std class="hljs-keyword">for (int i : vec) {
std::cout << i class="hljs-string">" ";
}
return 0;
}
在上面的示例中,try块中的assign函数可能会导致异常,如果发生异常,会在catch块中捕获并输出异常信息。这样可以避免程序崩溃,并能够对异常进行处理。