构造函数的使用如何实现数据隐藏?

How is the usage of constructors an implementation of data-hiding?

我知道构造函数是做什么用的,有点知道数据隐藏意味着什么....发现两者之间绝对没有link(我是个笨蛋, sedd)...请帮忙?

我认为 ctors 可以用作 RAII 的一种形式。本质上,我们可以通过构造函数初始化一个内部(私有)变量,现在可以使该变量在 class.

之外不可访问
class Foo
{
public:
  Foo(int i)
    : m_i(i) {} //< only place we init variable

private:
  int m_i; //< we cannot access this var
};