要创建自己的队列类,我需要在此类的函数内声明一个类属性。
我想做的是:
当我调用函数[]
时,程序会私有地为类创建一个新属性,以便在使用运算符class Car:
def __init__ (self, ...):
...
self.color = 'blue'
之后进行访问。通过这个我可以创建一个没有类型限制的队列,使用任何类的项目。
有可能吗?
修改
此队列只是一个使用示例。我真正的问题是:在python中,我可以这样做:
__init__
现在,颜色可以在类的任何地方使用(请记住,不需要插入类型来在python中声明变量。例如,颜色已在flowplayer(flowplayerObject, {
hlsjs: {
xhrSetup: function (xhr) {
xhr.withCredentials = true;
}
},
swf: ------,
swfHls: -------,
clip: {
cuepoints:[videoStartTime,videoEndTime],
sources: [
{type: "application/x-mpegURL", src: -------l},
{type: "video/mp4", src: -------}
]
}
}).one("ready", function (e, api, video){
api.seek(parseInt(videoStartTime));
}).on("cuepoint", function (e, api, cuepoint) {
if (cuepoint.index === 1) {
api.pause();
};
}) ;
范围内声明,但是是类属性,而不是局部变量)。
我怎样才能在c ++中做这样的事情?
答案 0 :(得分:0)
问题首先不明确。 据我所知,您希望创建一个具有异构元素的队列。您可以将此答案称为异构容器。
Heterogeneous containers in C++ 您还可以使用元组来保存异构数据。
答案 1 :(得分:0)
您正在寻找的概念是一个成员变量,它必须是类定义的一部分,因为C ++不是动态类型的。要使它只在类中可见,请将其设为私有。然后,您可以在构造函数初始化列表中设置其值。
class Car {
public:
Car : color("blue") { }
private:
std::string color;
};