gpt4 book ai didi

c++ - 如果未满足某些条件,从方法返回什么?

转载 作者:行者123 更新时间:2023-11-30 01:09:26 25 4
gpt4 key购买 nike

我正在编写一个 Matrice 类(为了练习),当我编写将两个 Matrice 对象相乘的方法时,我必须检查矩阵乘法是否满足某些条件:

Matrix Matrix::mul(const Matrix &mat)
{
if(col != mat.row)
//we cannot multiply in this case
else
{
//create temp object result
//perform multiplication
return result;
}
}

现在我很好奇如果没有满足条件该怎么办,因为回到 main.cpp 我会写这样的东西:

Matrix a = b.mul(c);

现在如果 b 和 c 不能相乘,我应该返回什么?抛出异常的最佳方法是强制使用该类的人发送兼容矩阵,还有其他更好的方法吗?

最佳答案

不要返回任何东西,抛出 exception相反:

if (failure)
throw std::runtime_error("Exception!!");

你可以抛出任何 different exceptions那更适合你的情况。

顺便说一下,你可以看看我的项目Matrix on GitHub有关如何创建这样一个类来对矩阵进行操作的示例。

关于c++ - 如果未满足某些条件,从方法返回什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40330829/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com