博客
关于我
C++中的auto与static用法
阅读量:311 次
发布时间:2019-03-03

本文共 872 字,大约阅读时间需要 2 分钟。

C++中的静态修饰符

静态修饰符(static)在C++中具有多种用途,主要用于控制变量和函数的链接性和存储持续性。本文将从变量的链接性、函数的链接性以及类成员函数的特殊性等方面详细探讨static的应用。

变量的链接性

静态修饰符用于控制变量的链接性,具体表现为:

  • 外部链接静态变量:未被static修饰的全局变量具有外部链接性,可以被其他文件访问。
    int globalValue = 100; // 外部链接静态变量
  • 内部链接静态变量:在同一文件中定义并用static修饰的变量具有内部链接性,只能在该文件内访问。
    static int fileValue = 200; // 内部链接静态变量
  • 无链接静态变量:在函数或代码块内定义并用static修饰的变量具有无链接性,只能在该函数或代码块内访问。
    int main() {    static int internalValue = 300; // 无链接静态变量}
  • 函数的链接性

    静态修饰符还可用于修饰函数,控制其链接性:

  • 静态函数的内部链接性:在同一文件中定义并用static修饰的函数具有内部链接性,只能在该文件内调用。
    static void function1() {    // 函数体}
  • 静态函数的覆盖作用:如果在多个文件中定义了相同名称的函数,static修饰的函数在该文件中具有优先权,覆盖外部定义。
  • 类成员函数的特殊性

    静态修饰符在类成员函数中的应用有特殊之处:

  • 静态成员函数的调用方式:静态成员函数可以通过类名直接调用,适用于不需要对象的场景。
    static int num() {    return num_string; // num_string必须是静态成员变量}
  • 静态成员函数的访问限制:静态成员函数不能通过对象指针(this)引用调用,适用于不依赖于对象状态的函数。
  • 示例总结

    通过以上示例可以清晰地看到,static修饰符在变量和函数中的应用不仅影响其存储持续性,还显著影响其在程序中的访问范围。理解这些特性有助于编写更高效、更安全的C++代码。

    转载地址:http://ktlm.baihongyu.com/

    你可能感兴趣的文章
    PHP性能监控 - 开启xhprof(一)
    查看>>
    PHP性能监控 - 怎么看xhprof报告(二)
    查看>>
    php截取字符串代码,PHP字符串截取_php
    查看>>
    php截取字符串,无乱码
    查看>>
    php手冊,php手冊之變量范圍
    查看>>
    PHP手机号码归属地查询API接口
    查看>>
    PHP执行耗时脚本实时输出内容
    查看>>
    PHP扩展安装
    查看>>
    PHP扩展数据库连接参数说明详解
    查看>>
    php把get参数放入数组_php怎么将数组转为url参数?
    查看>>
    php接口返回数据 用echo 还是return?
    查看>>
    php接口返回状态,大家一般怎么规范接口返回内容
    查看>>
    php接收formdata上传的多个文件,使用formData()上传多个文件
    查看>>
    PHP操作csv文件导入+导出
    查看>>
    php操作mysql用select_php如何操作mysql获取select 结果
    查看>>
    PHP操作符与控制结构
    查看>>
    PHP支付宝SDK使用,电脑网页支付
    查看>>
    php支付宝手机网页支付类实例
    查看>>
    php教程之php空白页的原因及解决方法
    查看>>
    PHP数据库操作
    查看>>