最新回答 / Uestc_L
你的坐标类都没有定义,也就找不到Coordinate对象也就是找不到构造函数实例化Coordinate。 m_coorA.getX()这个m_coorA是一个对象成员
2015-10-20
已采纳回答 / 一曲幽魂付衷情
A *a=new A; 和 A *a=new A(); 都是调用A类的默认构造函数!!!!但是如果单独声明一个A 类变量,如:A a;则调用的是默认构造函数,但是不能写成 A a()来调用默认构造函数!!因为这种形式会被识别成一个:名称为a的不接受任何参数,返回值为A类型的函数!!!
2015-10-18
已采纳回答 / onemoo
可以直接返回Array,但这样并不好。&这表明返回的是array引用。类成员函数有时打算返回类实例自身,就会返回*this的引用。而有时并不一定需要返回自身,但仍会选择返回引用,原因如下:函数在返回值的时候,是先用你要返回的变量去构造一个临时变量,再将这个临时变量返回给接受返回值的调用者。在调用者使用过后,这个临时变量再被自动销毁。如果返回的是一个很大的类实例的话,构造这个临时变量会调用拷贝构造函数,这可能造成很大的运行开销(例子中的情况下array会被整个复制一遍)。为了减少这种负面影响,在一些...
2015-10-17
最赞回答 / onemoo
一般提到堆栈,实际上指的是“栈”(stack)。这个名词在很多地方都会用到:它是一种数据结构。在描述内存时:一个进程的地址空间的不同区域会有不同的用途。 其中有 堆区(heap)和 栈区(stack)。函数的调用是在栈中运作的,函数中的那些变量也都在栈中。其实程序中的大部分变量都在栈中,毕竟程序大量存在函数调用(main函数本身也是函数)。而手动申请内存(new出来的)构造的变量就在堆中。
2015-09-26