c ++中的静态函数访问

时间:2014-08-23 07:45:58

标签: c++

我有一个私有静态成员变量和静态函数的类,用于访问私有静态变量。

#include<iostream>
using namespace std;

class staticMem
{
  private:
  static int myval;

 public:

 static int getmyval()
  {
  return myval;
 }

  //static void setmyval(int a)
 //{
  //myval=a;
 //}

};

int staticMem::myval =10;

int main()
{
  int x;
  //staticMem::setmyval(10);
  cout<<"the value is"<<staticMem::getmyval()<<endl;
  cin>>x;

}

完美无缺。 但我想使用静态函数设置值。我试过这个但它不会工作。

#include<iostream>
using namespace std;

class staticMem
{
  private:
  static int myval;

 public:

 static int getmyval()
  {
  return myval;
 }

 static void setmyval(int a)
 {
  myval=a;
 }

};


int main()
{

  staticMem::setmyval(10);
  cout<<"the value is"<<staticMem::getmyval()<<endl;

}

修改 抱歉,我给出了错误的问题..更新请检查

1 个答案:

答案 0 :(得分:2)

需要定义静态成员,因此至少在课程结束后需要以下行。声明:

int staticMem::myval;