Validating Function Inputs
Use function argument validation in MATLAB® to declare specific restrictions on function input arguments. You can constrain the class, size, and other aspects of function input values without writing code in the body of the function to perform these tests.
Published: 5 Sep 2019
Creating robust functions that check input arguments for errors can result in code that looks complicated and is difficult to understand.
Note that most of the code for this simple function is error checking code.
Using function input argument validation, you can constrain the class, size, and other aspects of function inputs without writing a lot of code in the body of the function to perform these tests.
And it provides users with clear error messages.
With function input argument validation, you can include a default value for optional input arguments—in this case, (0,0)—and MATLAB will override it if the user provides a value.
Now let's look at an example function that plots a quadrilateral.
The algorithm requires row vectors containing four elements for the operations to work.
But what happens when we pass in column vectors instead? I’ll do this by transposing one of our inputs.
In the case of 1D arrays, function input argument validation automatically transposes the inputs to the expected orientation for you.
This function also accepts two custom name-value pairs—LineType and LineThickness—which are defined in the code as a struct.
Using this syntax enables auto-complete suggestions for your custom name-value pairs.
With function input argument validation, you can eliminate cumbersome argument-checking code and improve the readability, robustness, and maintainability of your code.
Read the documentation to learn more.
Featured Product
MATLAB
Up Next:
Related Videos:
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
亚太
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)