block-quote On this pagechevron-down
copy Copy chevron-down
en chevron-right examples chevron-right section_3 Functions A function is a block of organized, reusable code that is used to perform a single, related action. Functions provide better modularity for your application and a high degree of code reusing.
Ideally, you should consider using the single responsibility principlearrow-up-right (SOLID) which states that every module or function should have responsibility for a single part of the functionality provided by the software to keep your code maintainable.
Like C and Go, functions cannot be overloaded.
Copy fn sum ( x , y int ) int {
return x + y
}
println ( sum ( 77 , 33 )) Note: The type comes after the argument's name.
Copy fn full_name ( first_name , last_name string ) string {
return first_name + ' ' + last_name
}
println ( full_name ( " Vitor " , " Oliveira " )) Variadic Functions
Functions can also be variadic i.e. accept an infinite number of arguments. They are not arrays and cannot be returned.
Copy fn foo ( test ... string ) {
for txt in test {
println ( txt )
}
}
foo ( " V " , " is " , " the " , " best " , " lang " , " ever " ) Output
Multi-Return Functions
Similar to Go, functions in V can also return multiple and with a different type.
Output
High Order Functions
Functions in V can also take in another function as a parameter which is usually needed for something like sort, map, filter, etc.
Output
Write a V program to find the square of any number using the function.
Write a V program to check a given number is even or odd using the function.
Write a V program to convert decimal number to binary number using the function.
Write a V program to check whether a number is a prime number or not using the function.
Write a V program to get the largest element of an array using the function.