
C++
文章平均质量分 54
「已注销」
这个作者很懒,什么都没留下…
展开
-
[C++] C++的拷贝构造函数浅析
#includeusing namespace std;class point{ public: point(int xx, int yy) { x = xx; y = yy; }/* point(point &t) { x = t.x;原创 2014-04-14 14:40:27 · 652 阅读 · 0 评论 -
[C++] 静态变量基本知识
程序运行的结果是什么?#includeusing namespace std;void func(){ static int a = 5; a++; printf("%d\n", a);} int main(){ func(); func(); return 0;}按下ctrl+a查看答案这段程序会输出6和7.静态变量不会随着每一次的函数调用而产生一个副本,所以初始化一次以后就不会再次初始化。这就原创 2014-04-14 14:40:29 · 549 阅读 · 0 评论 -
[C++] 类型兼容规则
下面的代码输出什么结果呢?#includeusing namespace std;class A{ public: void dis(){ printf("AAA\n"); }};class B:public A{ public: void dis(){ printf("BBB\n"); }};class C:public B{ public: void dis(){ printf("CCC原创 2014-04-14 14:40:34 · 728 阅读 · 0 评论 -
[C++] C++的运算符重载(+、-、前置--、后置--,前置++,后置++、==)
#includeusing namespace std;class point{public: point(int xx, int yy):x(xx), y(yy){} point operator+(point &a) { return point(x+a.x, y+a.y); } point operator-(point &a) { return point(x-a.x, y-a.y);原创 2014-04-14 14:40:43 · 948 阅读 · 0 评论 -
[C++] C++作用域
*#includeusing namespace std;class Base1{public: int var; void func(){ cout};class Base2{public: int var; void func(){ cout};class Derived:public Base1, public Base2{public: int var;原创 2014-04-14 14:40:50 · 630 阅读 · 0 评论 -
[C++] 32位C++程序,计算sizeof的值
sizeof(str) = 6; //字符串数组,大小是六个字节(加上'\0'共六个)。sizeof(p) = 4; // 指针的内容就是一个指向目标地址的整数,所以不管指向char、int还是其他,32位机指针一律是4个字节。sizeof(n) = 4; // int型变量是4个字节。右侧:sizeof(str) = 4; // 这里的str不再是100100字节。当数组作为函数的参数进行传递时原创 2014-04-14 14:40:47 · 3032 阅读 · 0 评论 -
[编程语言] 堆和栈的全面总结
操作系统中的栈: 由编译器自动分配和自动释放,一个函数对应一个栈,用于存放函数的参数值、函数调用完成后的返回值和函数体内的局部变量等。栈占用连续的一段内存空间,其操作和组织方式与数据结构中的栈十分相似。栈是为了执行线程留出的内存空间。当调用函数时创建栈,当函数执行完毕,栈就被回收了。操作系统中的堆: 由程序员手动进行内存的申请与释放。由于程序员手动申请及释原创 2014-09-01 02:06:08 · 5718 阅读 · 40 评论 -
[编程开发] 由指针传参引发的一点分析
昨天有同学(初学指针)在练习单链表和二叉树的时候,程序老是崩溃,或者得不到正确结果,于是向我求助。问题就出在指针的参数传递上,没传好指针导致内存混乱,其他代码基本全对。这个错误十分可惜。故在此我想做个记录,可能显得十分基础。如果函数的参数是普通的一级指针,那么就意味着你只能使用指针、改变指针指向或者改变指向的目标变量。不嫩试图通过这个指针来申请内存。void getMemory(int原创 2014-09-01 05:09:06 · 2698 阅读 · 5 评论