C/C++: static variables

2021/8/3 20:07:51

本文主要是介绍C/C++: static variables,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

static variable can only be initialized once. Compiler persist the variable till the end of the program.

Eg:

#include <iostream>

int* a = NULL;

void my_delete()
{
    static int deleted = 0;
    std::cout << "deleted = " << deleted ++ << std::endl;
    std::cout << "&deleted = " << &deleted << std::endl;
    a = &deleted;
}



int main() {
    my_delete();
    my_delete();
    my_delete();
    std::cout << "in main, a = " << a << std::endl;
    std::cout << "in main, deleted = " << *a << std::endl;
    
    std::cout << "in main, a = " << a << std::endl;
    std::cout << "in main, deleted = " << *a << std::endl;
    return 0;
}

Result:

deleted = 0
&deleted = 0x6011a4
deleted = 1
&deleted = 0x6011a4
deleted = 2
&deleted = 0x6011a4
in main, a = 0x6011a4
in main, deleted = 3
in main, a = 0x6011a4
in main, deleted = 3

End



这篇关于C/C++: static variables的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程