当前位置:实例文章 » 其他实例» [文章]C++学习之static关键字小结

C++学习之static关键字小结

发布人:shili8 发布时间:2024-12-23 12:01 阅读次数:0

**C++学习之static关键字小结**

在C++语言中,`static`关键字有多种用途,它可以修饰变量、函数、类成员等。理解`static`的含义和应用是C++程序员必备的基本功之一。在本文中,我们将对`static`关键字进行小结,包括其定义、作用域、变量、函数和类成员的使用。

###1. static定义在C++语言中,`static`关键字有多种含义,它可以修饰变量、函数、类成员等。`static`通常用于表示某个值或行为是局部的,不会被外界访问或修改。

###2. static作用域`static`关键字在C++中主要用于定义静态变量和静态函数。静态变量和静态函数都是程序内部的,不能被外部访问或修改。

#### 静态变量静态变量是程序内部的一个局部变量,它的值不会随着函数的执行而改变。静态变量在第一次使用时会被初始化一次,然后就保持不变了。

cpp#include <iostream>

void testStaticVariable() {
 static int count =0; // 静态变量,第一次使用时会被初始化 std::cout << "count: " << count << std::endl;
 count++;
}

int main() {
 for (int i =0; i < 5; i++) {
 testStaticVariable();
 }
 return0;
}


在上面的例子中,`count`是静态变量,它的值不会随着函数的执行而改变。第一次使用时会被初始化为0,然后就保持不变了。

#### 静态函数静态函数是程序内部的一个局部函数,它不能被外部访问或修改。静态函数通常用于定义一些私有的函数,避免外部访问和修改。

cpp#include <iostream>

class TestStaticFunction {
public:
 void test() {
 static int count =0; // 静态变量 std::cout << "count: " << count << std::endl;
 count++;
 }
};

int main() {
 TestStaticFunction test;
 for (int i =0; i < 5; i++) {
 test.test();
 }
 return0;
}


在上面的例子中,`test()`是静态函数,它不能被外部访问或修改。内部使用了一个静态变量`count`。

###3. static变量`static`关键字可以修饰变量,表示某个值是局部的,不会被外界访问或修改。

#### 静态整数变量
cpp#include <iostream>

void testStaticInt() {
 static int count =0; // 静态整数变量 std::cout << "count: " << count << std::endl;
 count++;
}

int main() {
 for (int i =0; i < 5; i++) {
 testStaticInt();
 }
 return0;
}


#### 静态浮点变量
cpp#include <iostream>

void testStaticFloat() {
 static float count =0.0f; // 静态浮点变量 std::cout << "count: " << count << std::endl;
 count++;
}

int main() {
 for (int i =0; i < 5; i++) {
 testStaticFloat();
 }
 return0;
}


#### 静态字符变量
cpp#include <iostream>

void testStaticChar() {
 static char c = 'A'; // 静态字符变量 std::cout << "c: " << c << std::endl;
 c++;
}

int main() {
 for (int i =0; i < 5; i++) {
 testStaticChar();
 }
 return0;
}


###4. static函数`static`关键字可以修饰函数,表示某个函数是局部的,不会被外界访问或修改。

#### 静态成员函数
cpp#include <iostream>

class TestStaticFunction {
public:
 void test() {
 static int count =0; // 静态变量 std::cout << "count: " << count << std::endl;
 count++;
 }
};

int main() {
 TestStaticFunction test;
 for (int i =0; i < 5; i++) {
 test.test();
 }
 return0;
}


#### 静态非成员函数
cpp#include <iostream>

void testStaticNonMemberFunction() {
 static int count =0; // 静态变量 std::cout << "count: " << count << std::endl;
 count++;
}

int main() {
 for (int i =0; i < 5; i++) {
 testStaticNonMemberFunction();
 }
 return0;
}


###5. static类成员`static`关键字可以修饰类成员,表示某个值是局部的,不会被外界访问或修改。

#### 静态整数成员
cpp#include <iostream>

class TestStaticIntMember {
public:
 static int count; // 静态整数成员};

int main() {
 std::cout << "count: " << TestStaticIntMember::count << std::endl;
 return0;
}


#### 静态浮点成员
cpp#include <iostream>

class TestStaticFloatMember {
public:
 static float count; // 静态浮点成员};

int main() {
 std::cout << "count: " << TestStaticFloatMember::count << std::endl;
 return0;
}


#### 静态字符成员
cpp#include <iostream>

class TestStaticCharMember {
public:
 static char count; // 静态字符成员};

int main() {
 std::cout << "count: " << TestStaticCharMember::count << std::endl;
 return0;
}


### 总结`static`关键字在C++中有多种用途,它可以修饰变量、函数、类成员等。理解`static`的含义和应用是C++程序员必备的基本功之一。在本文中,我们对`static`关键字进行了小结,包括其定义、作用域、变量、函数和类成员的使用。

相关标签:算法
其他信息

其他资源

Top