摘要:VA_LIST:VA_LIST 是在C语言中解决变参问题的一组宏,所在头文件:#include <stdarg.h>他有这么几个成员1) va_list型变量:#ifdef _M_ALPHAtypedef struct {char *a0; /* pointer to first homed integer argument */int offset; /* byte offset of next parameter */} va_list;#elsetypedef char * va_list;#endif_M_ALPHA是指DEC ALPHA(Alpha AXP)架构。所以一般
阅读全文
摘要:三种迭代器配接器:1)insert iterators(安插型迭代器);2)stream iterators(流迭代器);3)Reverse iterator(逆向迭代器)。一、Insert Iterators:看下例子: 1 #include <iostream> 2 #include <vector> 3 #include <algorithm> 4 #include <list> 5 #include <deque> 6 #include <set> 7 8 using namespace std; 9 10 int
阅读全文
摘要:typename的两种用法:1)关键字typename被用来做为型别之前的标识符号,这也是它最特殊的一点:template <class T>class MyClass{ typename T::size_type value_type; ...};这里typename指出size_type是类T中定义的一个型别(如size_type是类T中存在的另外int型),因此该语句是将value_type声明为T::size_type的别名;如果没有typename关键字,size_type会被当成一个static成员。2)上述中的template<class T>中的clas
阅读全文
摘要:#include <iostream>using namespace std;struct A{ A(){cout << "A:"<< endl;}};struct B : public A{ B(){cout << "B:" << endl;};struct C : public B{ C(){cout << "C:" << endl; B b; A a;};int main(){ C c; return 0;}开始猜测运行结果为:A-B-A-A-B
阅读全文