在哪里以及如何定义成员变量?在标头或实现文件中?

Chr*_*ian -3 c++

我目前正在学习C++.我在Java(我在大学学过)练习(大约2年).

我在C++中理解类和成员变量的概念时遇到了问题.给出以下示例:

文件:Mems.h:

class Mems{

int n;
Mems();
};
Run Code Online (Sandbox Code Playgroud)

文件Mems.cpp:

class Mems{

Mems::Mems(){
    //Do something in constructor
}
};
Run Code Online (Sandbox Code Playgroud)

我不知道,如果我想让它们坚持到对象,我必须把变量放在哪里:

当我在头文件中定义它们时,我无法在cpp文件中访问它们,反之亦然.

你能给我一个提示吗?

jua*_*nza 5

您无需在.cpp文件中重新声明该类.您只需要实现其成员函数:

#include "Mems.h"
#include <iostream> // only required for the std::cout, std::endl example

Mems::Mems() : n(42)  // n initialized to 42
{
  std::cout << "Mems default constructor, n = " << n << std::endl;    
}
Run Code Online (Sandbox Code Playgroud)

请注意,通常您需要默认构造函数public.private默认情况下,成员在C++类和public结构中.

class Mems
{
 public:
  Mems();
 private:
  int n;
};
Run Code Online (Sandbox Code Playgroud)