问题:可以通过给定输入流对象来调用临时类(istream(构造函数,但我想用零参数调用该(istrea姆(构造函数,或者你可以说我想给(istrea(构造函数一个默认参数。我该怎么做?
#include <iostream>
class temp
{
public:
temp(std::istream &is) { is >> i; }
private:
int i;
};
int main()
{
temp obj(std::cin); // okay
/*
* temp obj; // error:temp object don;t take zero argument // but i want this!
*/
}
您可以为此使用默认参数。例如Ideone Link
#include <iostream>
class temp
{
public:
temp(std::istream &is = std::cin ) { is >> i; }
private:
int i;
};
int main()
{
temp obj(std::cin); // okay
temp obj1; // error:temp object don;t take zero argument // but i want this!
}