类定义后的C ++公共方法定义?

时间:2014-02-07 03:01:54

标签: c++ oop variables inheritance

class Car {

    private:
      int doors;

    public: 
      void print();
      Car();
      Car(int doors);
 };


 Car :: Car (int doors) 
 {
     doors = doors;
 }

这是C ++中类定义的正确语法吗?

为什么方法(在我看过的例子中)在类定义之外声明?

:: syntax真正意味着什么?

1 个答案:

答案 0 :(得分:2)

是。这是有效的。

方法不在外面“声明”。它们在外部“定义”以使声明和定义分开。您已将声明包含在您的课程中,其中说明了其成员资格。您也可以在其中包含大多数定义。但是,类实现通常在单独的实现文件中完成。

::被称为范围解析运算符。 “Car :: Car(int doors)”的意思是“来自Car类的构造函数Car,它接受一个int参数”

编辑:只是要添加,范围解析运算符可以识别工件(在您的示例中,构造函数)属于哪个范围(在您的示例中,哪个类)。