Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/143.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ C++;使用public:ctor()初始化,这是什么意思?_C++_C++11_Constructor - Fatal编程技术网

C++ C++;使用public:ctor()初始化,这是什么意思?

C++ C++;使用public:ctor()初始化,这是什么意思?,c++,c++11,constructor,C++,C++11,Constructor,我刚刚偶然发现了这段代码: class MyClass { public:MyClass(); void DoMagic(); private: void DoRealMagic(); private: int m_iSomething; }; 我想知道这句话: public:MyClass(); 这到底意味着什么,意味着什么?!我以前从未在C

我刚刚偶然发现了这段代码:

class MyClass
{
    public:MyClass();
        void             DoMagic();

    private:
        void             DoRealMagic();

    private:
        int              m_iSomething;
};
我想知道这句话:

public:MyClass();
这到底意味着什么,意味着什么?!我以前从未在C++中见过这个…似乎这和默认的ctor有关

你也可以写作

 public:
      MyClass();
让它更清楚

它只是一个公共默认构造函数声明。没有魔法,没有什么特别的

<>我以前从未在C++中看到过…… 是的,像你看到的那样写是很不寻常的。适当的换行和缩进使代码更清晰易读。

您也可以编写代码

 public:
      MyClass();
让它更清楚

它只是一个公共默认构造函数声明。没有魔法,没有什么特别的

<>我以前从未在C++中看到过……
是的,像你看到的那样写是很不寻常的。适当的换行符和缩进可以使代码更加清晰易读。

@DoubleVoid当然,换行符对于消除代码模糊非常有用-P.@DoubleVoid当然,换行符对于消除代码混淆非常有用-P.如果用户定义的ctor不是公共的,它就不能用于从外部世界构造对象。谢谢你的回答:)我知道,我完全没有意识到,即使没有换行符,这个代码也是有效的。。。这让我有点困惑如果用户定义的ctor不是公共的,它就不能用于从外部世界构造对象。谢谢你的回答:)我知道,我完全没有意识到,即使没有换行符,这段代码也是有效的。。。这让我有点困惑