C functions have the following types: simple functions, const functions, static functions, and virtual functions; features include: inline functions, default parameters, reference returns, and overloaded functions. For example, the calculateArea function uses π to calculate the area of a circle of a given radius and returns it as output.
A function in C is a reusable block of code that receives input and produces output. Functions have an explicit name, parameter list, and return value type.
Function type
Simple function:The simplest function type without any prefix or suffix modifiers.
void myFunction(); // 返回 void,不接收参数
const Function:The function does not modify the data it accesses.
const int &myFunction(const int &x); // 返回常引用,接收常引用
Static function:The function does not depend on the class object and can only access static data members.
static void myFunction(); // 静态函数,不接收参数
Virtual function:Function used for polymorphism, allowing derived classes and parent classes to have functions with the same name, but different behaviors.
virtual void myFunction() = 0; // 纯虚函数,必须在派生类中重写
Function features
Inline function:Inline the function code directly into the calling function to improve performance.
inline int myFunction(int x) { return x * x; } // 内联函数,接收一个整型参数,返回平方的值
Default parameters:Allow function parameters to specify default values when called.
int myFunction(int x, int y = 10); // 默认参数为 10
Reference return:The function can return a reference to the data, allowing the caller to directly modify the original data.
int &myFunction(int &x); // 返回对整型变量的引用
Overloaded functions:Functions with the same name but different parameter lists.
int myFunction(int x); // 一个参数 double myFunction(double x); // 一个 double 参数
Practical case
Consider a function that calculates the area of a circle:
#includedouble calculateArea(double radius) { return M_PI * radius * radius; // 返回圆的面积 } int main() { double radius = 5.0; double area = calculateArea(radius); cout << "半径为 " << radius << " 的圆的面积为 " << area << endl; return 0; }
The above is the detailed content of C++ function types and characteristics. For more information, please follow other related articles on the PHP Chinese website!