zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    会跳舞的树(只用HTML+CSS)(转)
    国内UED收录
    HDU 1078 dfs+dp
    HDU 1278
    HDU 4499
    HDU 4597
    POJ2777
    POJ1780 Code
    简单的Fleury算法模板
    POJ 2513 无向欧拉通路+字典树+并查集
  • 原文地址:https://www.cnblogs.com/ghjnwk/p/15095414.html
Copyright © 2011-2022 走看看