在嵌套类中初始化类变量

时间:2017-09-14 00:20:34

标签: c++ class

我是C ++类的新手,我对嵌套类有一些疑问。

我所知道的

  1. C ++中的类是由' private'设置的变量和函数集。默认情况下。
  2. 创建类时,会创建一个对象。
  3. 我理解构造函数的基本概念。
  4. 我知道我可以制作课程'作为另一个'类中的变量,也称为嵌套类,但我真的无法弄清楚它是如何完成的。如果我创建一个嵌套类,它是否创建了对象本身,以及嵌套类中的类变量中的对象?

    我在使用构造函数初始化嵌套类中的类变量时遇到了问题。

    例如

    score = 0
    letter_combos = ["hel","goo","the"]
    sentence = input("Please enter a sentence for anaysing!")
    length = len(sentence)
    for letter_combos in range (0, length):
        score += 1        
        print(score)
    

    让我们说我创建了一个包含2个int变量的类。

    class Point {
    int xpos;
    int ypos; 
    }
    

    然后,我创建了一个具有2' Point类'的Rectangle类。作为变量。

    class Rectangle {
    Point upLeft;
    Point lowRight;
    }
    

    然后,我创建了一个对象 rec1

    如何在Rectangle Class中使用构造函数 初始化2 xpos和2ypos?

1 个答案:

答案 0 :(得分:0)

你需要添加一个构造函数,这是一个简单的例子:

class Point {
public:
    Point(int x, int y) : xpos(x), ypos(y) {}
private:
    int xpos;
    int ypos; 
};


class Rectangle {
public:
    Rectangle(int x1, int y1, int x2, int y2) : upLeft(Point(x1, y1)), lowRight(Point(x2, y2)) {}
private:
    Point upLeft;
    Point lowRight;
};