首页 > 编程语言 >C++类中使用静态成员变量

C++类中使用静态成员变量

时间:2022-11-11 14:15:55浏览次数:42  
标签:静态 void C++ StaticTest print static cpp include 类中

如果需要在类中使用静态成员变量,需要在头文件和.cpp文件各定义一次

例如,有StaticTest.h和StaticTest.cpp两个文件

StaticTest.h:

class StaticTest
{
private:
    static int value;

public:
    static void print();
};

 

StaticTest.cpp

#include "StaticTest.h"

#include <iostream>
using namespace std;

int StaticTest::value; //必须要在.cpp文件再定义一次

void StaticTest::print()
{
    cout << value;
}

 

============================================================================

而如果使用的是全局静态变量(非类成员),则不需要在.cpp文件再定义一次

例如,StaticTest.h:

static int global_value;

class StaticTest
{
public:
    static void print();
};

 

StaticTest.cpp

#include "StaticTest.h"

#include <iostream>
using namespace std;

void StaticTest::print()
{
    cout << global_value; //直接使用
}

 

标签:静态,void,C++,StaticTest,print,static,cpp,include,类中
From: https://www.cnblogs.com/live41/p/16880281.html

相关文章

  • 【开源】.Net Aop(静态织入)框架 BSF.Aop
    【开源】.Net免费开源,静态Aop织入(直接修改IL中间语言)框架,类似PostSharp(收费);实现前后Aop切面和INotifyPropertyChanged注入方式,性能接近原生编码方式......
  • django 配置静态文件
    在django中使用图片、css、或者js文件时,并不能直接使用,而要进行配置,也就是所谓的静态文件配置。1配置settings.py文件:STATIC_ROOT变量设置为空,不知道这个有什么用STATIC_URL......
  • C/C++:探究二维数组的数组名
    C/C++:探究二维数组的数组名与数组指针先提一嘴:一维数组的数组名对于一个一维数组而言,其数组名是该数组的首地址,也就是一个数组首元素的指针,如下:#include<stdio.h>int......
  • C++ __autoclassinit2
    环境:VS2022 Version17.4.0操作系统:Windows10EnterpriseLTSC 19044.2193今天在写一个类的时候调试偶然看到__autoclassinit2这个东西发现一旦类中定义有指针变......
  • C++ 11新特性:类模板 ----- 元组tuple
    C++11标准新引入了一种类模板,命名为tuple(中文可直译为元组)。tuple最大的特点是:实例化的对象可以存储任意数量、任意类型的数据。tuple的应用场景很广泛,例如当需要存储......
  • C++标准库<locale> :由islower() 函数 ----- 判断字符是否为小写字母 深入学习locale库
      C++标准库<locale>:声明:classlocale;接口:   ......
  • 模板和泛型编程 C++ primer笔记
    16.1定义模板重载多个相似的函数是麻烦的:比如重载能接受多个类型的compare。使用函数模板之后可以定义成这样:template<typenameT>intcompare(constT&v1,constT......
  • C++ 输出 控制小数位数
    头文件:#include<iomanip>按有效位输出是setprecision,按小数位数输出也是setprecision,但到底是谁取决于fixed。cout<<resetiosflags(ios::fixed)<<setprecision(n)......
  • C++ 获取目录下所有文件的文件名
    vector<string>getFiles(stringcate_dir){vector<string>files;//存放文件名#ifdefWIN32_finddata_tfile;longlf;//输入文件夹路径if......
  • 静态库与动态库制作与使用
    静态库1.gcc获得.o文件gcc-cxx.cxx.c 2.将.o文件打包,使用ar工具(archive)arrcslibxxx.axxx.oxxx.or-将文件插入备存文件中c-建立备存文件......