gpt4 book ai didi

python - 有没有办法在 C++ 中模拟元编程?

转载 作者:行者123 更新时间:2023-11-27 23:03:47 27 4
gpt4 key购买 nike

有什么方法可以在 C++ 中模拟元编程吗? (c++ 不是 c++11 标准)对于 Python on stack 建议(Generate specific names proeprties using metaclass)我创建类似的并且它有效

class FooMeta(type):
def __init__(cls, name, bases, dct):
super(FooMeta, cls).__init__(name, bases, dct)
for n in range(100):
setattr(cls, 'NUMBER_%s'%n, n)

class Bar(object):
__metaclass__ = FooMeta

但我还需要 C++ 中的相同类,具有 n 个 static const int NUMBER_some_number 字段的类。如何在不进行硬编码的情况下创建它?

最佳答案

在 Python 中,命名前几百个整数可能具有轻微的性能优势,因为典型的实现只缓存几百个整数,并且仍然需要查找它们。

在 C++ 中,整数不是动态对象,因此没有问题也没有优势。

在 C++ 中,元编程现在通常通过使用模板机制来完成。在此之前介绍了一种使用宏来生成代码的方法。但是,由于您要解决的 Python 问题在 C++ 中不存在,因此没有意义。

关于python - 有没有办法在 C++ 中模拟元编程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25231407/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com