我开始使用 C++ 编写一些代码,并且我从一个简单的任务管理器程序中获得了这个简单的类方法,我正在编写一个实验:
void Task::setText(string text)
{
if(text.length() > MIN_LENGTH)
{
this->text = text;
}
}
如您所见,如果类text
属性的长度大于MIN_LENGHT
我显示的代码上方定义的变量,则此方法将类属性设置为传递给该方法的属性。因此,如果传递给方法的字符串的条件不为真,我必须做一些事情。
在我买的 C++ 书中,没有解释错误处理,而是assert
到处使用。由于断言只是在表达式为假时中止程序,这旨在作为输入验证,所以我寻找了一种更好的方法。
这个搜索让我找到了C++ exceptions。它解释了如何通过创建一个继承自exception
.
良好的 OOP 实践表明每个类都应该独立于程序中的其他类。那么我应该把我创建的这个异常类放在哪里呢?在同一个标题中,我定义了我的 Task 类?还是应该task.cpp
在我定义类的每个方法的地方?
也许这是一个愚蠢的问题,但只是想从一开始就确保安全并遵循良好的软件架构实践。