C++ 创建;功能链“;(用于配置类)
我有一个类,它包含我拥有的另一个类的配置。我想做一些类似的东西:C++ 创建;功能链“;(用于配置类),c++,C++,我有一个类,它包含我拥有的另一个类的配置。我想做一些类似的东西: Configuraion config; config = config.configData1(3) .configData2(2) .configData3(4); class Configuration { public: Configuration() { loc_configData1 = 0; loc_configData2 = 0;
Configuraion config;
config = config.configData1(3)
.configData2(2)
.configData3(4);
class Configuration
{
public:
Configuration()
{
loc_configData1 = 0;
loc_configData2 = 0;
loc_configData3 = 0;
}
const Configuration& configData1(int n)
{
loc_configData1 = n;
return *this;
}
const Configuration& configData2(int n = 1)
{
loc_configData2 = n;
return *this;
}
const Configuration& configData3(int n = 6)
{
loc_configData3 = n;
return *this;
}
private:
int loc_configData1;
int loc_configData2;
int loc_configData3;
}
<>我已经在java中看到了,我想知道C++中是否以及如何可能。
我的配置类与此类似:
Configuraion config;
config = config.configData1(3)
.configData2(2)
.configData3(4);
class Configuration
{
public:
Configuration()
{
loc_configData1 = 0;
loc_configData2 = 0;
loc_configData3 = 0;
}
const Configuration& configData1(int n)
{
loc_configData1 = n;
return *this;
}
const Configuration& configData2(int n = 1)
{
loc_configData2 = n;
return *this;
}
const Configuration& configData3(int n = 6)
{
loc_configData3 = n;
return *this;
}
private:
int loc_configData1;
int loc_configData2;
int loc_configData3;
}
如果您没有返回
const
,那么这是可能的。谢谢,这确实有效!我个人非常不喜欢,但这可能是你想要的