Qt的moc / C ++ 11是否具有C#的nameof()运算符?

时间:2016-07-25 00:24:33

标签: c# c++ qt c++11 nameof

Qt的moc / C ++ 11是否具有等同于C#的nameof()运算符? Qt有一个moc系统,它可以进行某种反射,但是我无法弄清楚如何得到像C#nameof()这样的变量名。这可能吗?

2 个答案:

答案 0 :(得分:1)

这在C ++ 11中是不可能的,因为只有在语言/编译器支持下才有可能。它也与反射(在运行时)无关,因为它在编译时为您提供了标识符的名称。

答案 1 :(得分:1)

如果您的编译器支持C ++ 17,则此库应执行您想要的所有操作: https://github.com/Neargye/nameof

https://www.reddit.com/r/cpp/comments/b3spr5/nameof_operator_for_modern_c_simple_name_of_a/

查看库作者的其他示例