在 Python 中,我有一个标志类,我发现它非常有用。我是 C++ 的新手,似乎无法在 C++ 中复制这个 python 功能。与其提出不起作用的 c++ 代码,不如说这是我想要复制的内容,我需要一些关于去哪里、模板、虚拟或 ?? 的建议
要求是能够动态地改变类的成员,在 python 中,它正在修改类的dict元素,它是实现这一点的自身。
在蟒蛇中:
导入系统参数 = []
...加载 args[] 与键:值循环通过 sys.argv[] ...等等等等
班级标志:
def __ init __(self, **args):
自己。__ 字典 __.update(args)
现在我们启用 flag.dynamicproperty
标志 = 标志(**dict(args))
使用示例: $ python script.py somedesc1 someval1 somedesc2 someval2
这样做是让我能够从命令行传递参数,如上所述,并即时分配任意数量的参数,然后通过返回 somval1 的 flag.property(例如 flag.somedesc1)调用进行访问. 考虑这一点的另一种方法是动态地将 key:value 属性添加到 C++ 类。
python代码中的使用示例:
如果 flag.somedesc1 != '10': 打印 someval1
我似乎无法做出类似的 C++ 工作。我研究了多态性,但是这些必须动态分配,然后可以作为类的属性访问。
想法???当然 c++ 可以做到这一点,我只是不知道从哪里开始。