随笔分类 -  C/C++

摘要:一、字符数组1、定义时进行初始化的方式(1)char c[12]={'I',' ','a','m',' ','h','a','p','p','y'};//最后两个元素自动补‘\0’(不是空格),其ASCII码为0(2)char c[]={'I',' ','a','m',' ','h','a','p'... 阅读全文
posted @ 2014-04-14 16:49 seven7seven 阅读(417) 评论(0) 推荐(0)
摘要:typedef char *String_t; 和 #define String_d char * 这两句在使用上有什么区别?答:typedefchar*String_t定义了一个新的类型别名,有类型检查。而#defineString_dchar*只是做了个简单的替换,无类型检查,前者在编译的时候处... 阅读全文
posted @ 2014-04-11 20:24 seven7seven 阅读(213) 评论(0) 推荐(0)
摘要:对字符串进行 sizeof 操作的时候,会把字符串的结束符“\0”计算进去的;进行 strlen操作求字符串的长度的时候,不计算\0 的。数组作为函数参数传递的时候,已经退化为指针了,Func 函数的参数 str_arg 只是表示一个指针,那个 100 不起任何作用的。改成void Func(cha... 阅读全文
posted @ 2014-04-11 18:43 seven7seven 阅读(884) 评论(0) 推荐(0)
摘要:一般地,建立对象和删除对象时,父类构造函数->子类构造函数->……->子类析构函数->父类析构函数。 特例:如果用new建立了一个对象,并将父类的指针指向这个子类的对象,那么用delete撤销对象时,系统只执行基类的析构函数,而不执行派生类的析构函数。如果希望按照子类析构函数->父类析构函数的... 阅读全文
posted @ 2014-03-25 14:50 seven7seven 阅读(203) 评论(0) 推荐(0)
摘要:一、多态的概念 C++中,多态性是指具有不同功能的函数可以用同一个函数名,这样就可以用一个函数名调用不同内容的函数。 在面向对象方法中一般是这样表述多态性的:向不同的对象发送同一消息(调用函数),不同的对象在接收时会产生不同的行为(即方法,不同的实现,即执行不同的函数)。可以说多态性是“一个接口... 阅读全文
posted @ 2014-03-25 14:31 seven7seven 阅读(1256) 评论(0) 推荐(0)
摘要:一、问题c++代码:#include #include using namespace std;int main(){ int a=1; cout#include using namespace std;int a=1;int afun(){ printf("调用afun(){a+... 阅读全文
posted @ 2014-03-24 23:03 seven7seven 阅读(1602) 评论(0) 推荐(0)
摘要:java代码:public class Test{ public static void main(String[] args){ int a=5; int b=(a++)*(a++);//5*6自左向右 int c=(++a)*(++a);//8*9... 阅读全文
posted @ 2014-03-24 22:01 seven7seven 阅读(353) 评论(0) 推荐(0)
摘要:参考: http://blog.csdn.net/wangyangkobe/article/details/5951248下面的文章解释有错误,不要看。。。。。。。。。。记住几句话: 编译器为每个有虚函数的类都建立一个虚函数表(其大小不计算在类中),并为这个类安插一个指向虚函数表的指针(大小计算在... 阅读全文
posted @ 2014-03-24 19:28 seven7seven 阅读(290) 评论(0) 推荐(0)
摘要:记住几句话: 结构体的长度一定是最长的数据元素类型的整数倍; 某数据元素的起始地址能被该类型所占的字节数整除; 静态变量是存放在全局数据区,而sizeof计算栈中分配的大小,不包括static变量;#include #include using namespace std;struct{//6... 阅读全文
posted @ 2014-03-24 19:06 seven7seven 阅读(187) 评论(0) 推荐(0)
摘要:以float a=1.0f为例:(int)a实际上是以浮点数a为参数构造了一个整型数,该整数的值是1;(int&)a则是告诉编译器将a当作整数看(并没有做任何实质上的转换),即读a的内存时按照整数来读取,而不考虑a本来的类型。为1065353216(3f800000的十进制表示);(int)&a是将... 阅读全文
posted @ 2014-03-24 18:27 seven7seven 阅读(292) 评论(0) 推荐(0)
摘要:int i=1;void main(){ int i=i;}解析:main里面的i从声明的那一刻就是可见的了,所以main里的i不是1,而是一个未定义的值。这段代码ctrl+F7编译能通过(有警告如下)ctrl+F5运行出错(如下图) 阅读全文
posted @ 2014-03-24 18:00 seven7seven 阅读(137) 评论(0) 推荐(0)