摘要:
C++中每个对象所占用的空间大小,是在编译的时候就确定的,在模板类没有真正的被使用之前,编译器是无法知道,模板类中使用模板类型的对象的所占用的空间的大小的。只有模板被真正使用的时候,编译器才知道,模板套用的是什么类型,应该分配多少空间。这也就是模板类为什么只是称之为模板,而不是泛型的缘故。 既然是在 阅读全文
摘要:
1 #include <iostream> 2 #include <string> 3 using namespace std; 4 string findLongestSubStr(string & str) 5 { 6 int n=(int)str.size(); 7 if(n==0) 8 return 0; 9 int *f=new int[n]; 10 f[0]=1; 11 int Max 阅读全文
摘要:
转载于:https://blog.csdn.net/ypshowm/article/details/89374706 编译过程主要分为四步: 1、词法分析(扫描) 运行类似于有限状态机的算法将源代码的字符分割成一系列的记号。词法分析产生的记号一般分为几种:关键字、标识符、字面量(数字,字符串等)、特 阅读全文
摘要:
1、预处理: 预处理过程主要处理那些源文件中的以"#"开始的预编译指令。包括:包含头文件、宏替换、条件编译而不进行语法检查。 2、编译: 编译过程就是把预处理的文件进行一系列的词法分析,语法分析,语义分析以及优化后产生相应的汇编代码文件,编译器将检查一些语法错误。 3、汇编: 将中间代码转换成二进制 阅读全文