1.符号表执行一个函数会引入一个用于函数的局部变量的新符号表。更确切地说,函数中的所有的赋值都是将值存储在局部符号表;而变量引用首先查找局部符号表,然后是上层函数的局部符号表,然后是全局符号表,最后是内置名字表。因此,在函数内部全局变量不能直接赋值(除非在一个global语句中命名),虽然可以引用它...
分类:
编程语言 时间:
2015-09-05 06:38:34
阅读次数:
203
由于C++和Java都是面向对象的编程语言,它们的多态性就分别靠虚函数和抽象函数来实现。C++的虚函数可以在子类中重写,调用是根据实际的对象来判别的,而不是通过指针类型(普通函数的调用是根据当前指针类型来判断的)。纯虚函数是一种在父函数中只定义而不实现的一种函数,不能用来声明对象,也可以被称为抽象类...
分类:
编程语言 时间:
2015-09-05 00:11:32
阅读次数:
228
先来段代码: 1 #include 2 using namespace std; 3 4 class Clock{ 5 private: 6 int H,M,S; 7 public: 8 Clock(int h=0,int m=0,int s=0){ 9 H=h,...
分类:
其他好文 时间:
2015-09-03 19:06:24
阅读次数:
173
通过一小段程序阐述C++中构造函数和析构函数的调用顺序
分类:
编程语言 时间:
2015-09-03 12:44:51
阅读次数:
186
RunTime简称运行时。就是系统在运行的时候的一些机制,其中最主要的是消息机制。对于C语言,函数的调用在编译的时候会决定调用哪个函数( C语言的函数调用请看这里 )。编译完成之后直接顺序执行,无任何二义性。OC的函数调用成为消息发送。属于动态调用过程。在编译的时候并不能决定真正调用哪个函数(事实证...
分类:
其他好文 时间:
2015-09-02 13:11:57
阅读次数:
188
本文是金旭亮老师网易云课堂的课程笔记,记录下来,以供备忘。函数执行上下文当函数运行时,通过this,函数可以获取它运行所需的外界环境的相关信息(比如某变量的值,另一个对象的引用等)。 this引用的对象会”变的”!每次对函数的调用都有一个上下文对象,this关键字引用它。如...
分类:
编程语言 时间:
2015-09-01 01:26:29
阅读次数:
165
栈模拟非递归算法递归算法的本质是利用函数的调用栈进行,实际上我们可以自行使用栈来进行模拟,这样的算法空间复杂度为O(h),h为二叉树的高度。前序遍历首先把根节点入栈,然后在每次循环中执行以下操作:此时栈顶元素即为当前的根节点,弹出并打印当前的根节点。把当前根节点的右儿子和左儿子分别入栈(注意是右儿子...
分类:
编程语言 时间:
2015-08-30 11:07:19
阅读次数:
220
printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出信息。 printf()函数的调用格式为: printf("", ); 其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原样输出;另一部分是格式化规定字符, 以"%"开始, 后跟一个或几个规定字符, 用来确...
分类:
编程语言 时间:
2015-08-30 06:27:34
阅读次数:
211
一、什么叫inline函数?inline(小心,不是online),翻译成“内联”或“内嵌”。意指:当编译器发现某段代码在调用一个内联函数时,它不是去调用该函数,而是将该函数的代码,整段插入到当前位置。这样做的好处是省去了调用的过程,加快程序运行速度。(函数的调用过程,由于有前面所说的参数入栈等操作...
分类:
其他好文 时间:
2015-08-27 12:57:59
阅读次数:
174
Item 9: Never call virtual functions during construction or destruction.
父类构造期间,对虚函数的调用不会下降至子类。如果这并非你的意图,请不要这样做! 这个问题阿里实习面试曾经问到过,看这篇文章: 2014阿里巴巴面试经历
看Scott Meyers举的例子:
class Transaction { ...
分类:
编程语言 时间:
2015-08-25 16:35:29
阅读次数:
141