![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++
誰伴我闖荡
暂时未填
展开
-
C/C++函数调用时的参数传递小结
<br />众所周知:<br />void method( Object arg ){<br />...<br />}<br />和<br />void method(Object & arg){<br />...<br />}<br />的区别,前者在函数调用的时候,将实参进行了一个复制,复制了一个镜像给了method函数,<br />不管在method中如何改变arg的值,之前的实参一直都没有变化,自始自终都固定不变。<br />而后者则是将实参本身传递给method函数,在method函数原创 2010-09-29 00:56:00 · 554 阅读 · 0 评论 -
C++前向声明隐含的问题
<br />今天写代码的时候,遇到了一个很神奇的问题,在代码编译的时候很正常,编译成功。<br />但是运行的时候,问题就出来了。<br />B *b;<br />我在代码中A *a = b->constructA();<br />(constructA()在内部调用new,创建一个新的A的实例)<br />即由类B的对象b生成一个类A的对象a,这里没有问题,<br /> <br />我在这里什么都不做,直接调用delete a;<br />神奇的时刻到来了,程序直接崩溃。<br /> <br />经过几个原创 2010-09-29 23:17:00 · 635 阅读 · 0 评论 -
转:GCC笔记(警告.优化以及调试选项)
<br />gcc提供了大量的警告选项,对代码中可能存在的问题提出警告,通常可以使用-Wall来开启以下警告:<br />-Waddress -Warray-bounds (only with -O2) -Wc++0x-compat<br />-Wchar-subscripts -Wimplicit-int -Wimplicit-function-declaration<br />-Wcomment -Wformat -Wmain (only for C/ObjC and unless<br />-ffre原创 2011-01-12 11:37:00 · 681 阅读 · 0 评论 -
C++ 字符串拷贝 汇编代码实现
<br /><br />void asmCpy(char* str1, char* str2)<br />{<br /> _asm{<br /> mov eax, str1//将str1的地址赋值给eax<br /> mov ecx, str2//将str2的地址赋值给ecx<br />s1:<br /> mov bl, [eax]//去eax地址所指向的值,赋值给bl<br /> cmp [eax], 0//比较当前这个字符是不是NULL<br原创 2011-01-15 16:20:00 · 1119 阅读 · 0 评论 -
【转】C++函数指针,C++ 虚函数表解析
虚函数表算是面试官最爱问的C++问题了,如果你的简历提到熟悉C++而关于虚函数机制没有回答好,那么你就会被怀疑。。。:)我觉得虽然理解虚函数表不是编程必须的,但是了解一下还是有帮助的,侯捷翻译的>应该是最详细解释所有这些的了。不过网上有很多很好的资源,下面转载陈皓的文章http://blog.csdn.net/haoel/archive/2007/12/18/1948051.aspx主要为了查阅方便,另外转载http://www.pconline.com.cn/pcedu/empolder/gj/c/0转载 2011-01-15 23:25:00 · 701 阅读 · 0 评论 -
[转]什么时候用虚拟析构函数
<br />原文地址:http://huayier.139.com////////////////////////////////////////////////////////////////////////////////<br />//特别需要指出的是,本文中的所有的测试结果都是在g++编译器和VC8编译器下测试的结果。<br />//各自的版本信息如下所示:<br />//g++<br />/******************************************************转载 2011-01-23 23:04:00 · 538 阅读 · 0 评论 -
POJ 1001 "Exponentiation"
#include #include #define MAX 300 int intLen(int *pArr){ int len = 0; while(pArr[len] != -1) { len++; } return len;} void copyIntArr(int * pArr1, int *pArr2){ int原创 2011-06-16 15:24:00 · 629 阅读 · 0 评论