JS和C ++中引用之间的差异

时间:2015-11-16 13:23:57

标签: javascript c++ reference programming-languages

为了更好地理解这两种语言,我想问一下:在旧C ++(< 11)和Javascript引擎中实现的引用之间有什么区别。

为了使讨论更容易,我可以在帖子中列出一些明显的差异:

  • 在C ++中,每种类型的变量都可以作为参考;在JS中,特定类型是引用,而其余(基元)则不是。
  • 在C ++中,初始化的引用不能更改为指向另一个对象;在JS中,引用可以随时指向另一个对象。
  • 在C ++中,必须初始化引用;在JS中,它们不必初始化。
  • 在C ++中,只能为引用指定相同或可转换的类型;在JS引用中可以分配任何类型。

共同特征:

  • 在两种语言中,引用类型的内存在堆上动态分配。 (在JS中也用于原始类型)

还有什么看似重要的差异和共同特征?

1 个答案:

答案 0 :(得分:1)

在C中没有参考。你在C中写的关于引用的所有内容都适用于C ++的引用,除了#34;普通特征"。在c ++中,您可以引用堆分配或堆栈分配的对象。

如果您想了解更多信息,请阅读C和C ++中的指针以及内存。没有指针,你的比较毫无意义。