我试图在方法调用堆栈中找到返回类型约束的存在。事件您使用的任何语言(java / c ++),我们指定方法/函数的返回类型。当这个方法进入调用堆栈(或在内存中,我不确定)它是如何使用我们指定的返回类型的?
另一件事是为什么我们不能在标题中指定两种返回类型?喜欢 public(int,float)myMethod(){ 返回(1,2.5); }
所以这个函数可以返回两个值(一个int和一个float)。 我不是在这里要求从方法中返回多个值。我当然可以使用数组或创建自定义对象。我的问题是,它是如何在堆栈中映射的,以便注意返回类型约束以及为什么我们不能指定多个返回类型?
正如你所看到的,调用堆栈的图片,我在这里看不到有关返回类型的任何内容。
所以最后我总结了我的问题。
1)您将如何修改此附加图像以指定返回类型以及原因?
2)我不能用任何语言(我知道)指定多个返回类型,为什么?
任何帮助将不胜感激!
答案 0 :(得分:0)
我自己得到了它。
第一个问题: 1)您将如何修改此附加图像以指定返回类型以及原因?
答案:调用堆栈中没有返回类型。在许多语言中,您甚至不指定返回类型,如python,PHP等。因此返回类型与调用堆栈没有关系。
第二个问题: 2)我不能用任何语言(我知道)指定多个返回类型,为什么?
答案:这取决于要求。语言设计者觉得不需要返回多个值(当然,他们提供像返回数组这样的替代值,但是返回的值只有一个,即对数组的引用)。如果语言设计者觉得需要返回两个值,我认为他们可以。但是没有必要这样做。