【发布时间】:2014-08-01 03:35:22
【问题描述】:
Convert string to variable name or variable type 和 How to use a string as a variable name in C++? 的答案都表示在编译后您不能将字符串用作变量。但是,他们提到python等高级语言可以。据我了解,Python 是从 https://softwareengineering.stackexchange.com/questions/20988/why-is-python-written-in-c-and-not-in-c 用 C 语言编写的。
所以如果python是用C写的,而且它可以使用字符串作为变量,那为什么人们不能用C++来做呢。
我猜这个问题不清楚。从 cmets 中的类比来看,
如果 Python 是由 C 制成的,我会假设编写了一些函数允许 Python 是动态的。那么,为什么不能在没有 Python 的所有其他部分的情况下编写该功能。
【问题讨论】:
-
@user1938107 仅仅因为语言 A 是用语言 B 编写的,并不意味着语言 B 是语言 A 的超集。可以想象,我可以使用旧的非 OO Visual Basic 编写 C++ 编译器。甚至是更好的例子——一些 C++ 编译器是用 C 编写的。C 有虚函数或模板吗?
-
“如果python是用C写的,而且它可以使用字符串作为变量,那为什么人们不能用C++来做呢。” ——房子是砖砌的。砖可以堆叠。那么房子为什么不能叠起来呢?
-
Fortran 用于导航早期的宇宙飞船。那么为什么 Fortran 不能绕地球运行呢?
-
每一种 编程语言都作为机器代码执行。因此,每种语言编程都必须相同。请有一些常识。
-
您显然想要回答的问题是“您可以将字符串映射到 C++ 中的值吗?”答案当然是肯定的,下面的一些答案说明了如何。
标签: c++ c string compile-time