将非成员变量数据传递给构造函数时如何保存它们然后在其他成员函数中使用? C ++

时间:2014-11-05 17:00:08

标签: c++ class constructor

 enum t_poi { Restaurant , bar , club , cinema }; 

class CPOI
{
private :
    t_poi m_type ;
    string m_description;

public :
    CPOI(t_poi type , string name , string description , double latitude , double longitude);
    void print();

};

CPOI ::CPOI(t_poi type , string name , string description , double latitude , double longitude){


    m_type = type;
    m_description = description;


}

void CPOI::print(){

  //here i want to print the other non member variables ( name , latitude and longitude ) 
}

**现在我不知道如何保存这3个非成员变量,以便在其他函数中使用它们 注意:我不想让它们成为成员变量 **

1 个答案:

答案 0 :(得分:1)

您的两个选项是

1)使它们成为成员变量

2)将它们作为参数添加到print()函数,如下所示,然后在构造函数中调用print(如果这是意图)

void CPOI::print(string name, double latitude , double longitude)

如果将它们传递给构造函数,但它们不存储在成员变量中,并且不用作构造函数中调用的任何函数的参数,则它们实际上是无用的。