C/C++
文章平均质量分 69
wangxueang224
这个作者很懒,什么都没留下…
展开
-
friend class
转自http://baike.baidu.com/view/6275831.htm 友元函数与友元类。 C++中以关键字friend声明友元关系。友元可以访问与其有friend关系的类中的私有成员。友元包括友元函数和友元类。编辑本段1.友元函数 如果在本类以外的其它地方定义了一个函数(这个函数可以是不属于任何类的非成员函数,也可以是其它类的成员函数),在类体中用frie转载 2012-09-01 15:43:24 · 694 阅读 · 0 评论 -
C++ Primer 语句
For适用于循环次数已知的情况,while循环适用于循环次数不易预知的情况。Const对象默认为文件的局部变量。 什么时候使用while循环:如果预先并不知道循环要迭代多少次,那么就选择while循环。需要开始进行检测的循环,一般选择while循环,也许偶尔会遇到情况就是需要一个灵活的循环,但是循环至少需要执行一次,这种情况下,可以用一个在结尾处作条件检测的while循环。原创 2014-06-07 17:10:24 · 1212 阅读 · 0 评论 -
C++ Primer 面向对象编程
面向对象编程: 面向对象编程基于三个基本概念:数据抽象、继承和动态绑定。继承和动态绑定在两个方面简化了我们的程序:能够容易地定义与其他类相似但又不相同的新类,能够更容易地编写忽略这些相似类型之间区别的程序。在 C++ 中,基类必须指出希望派生类重写哪些函数,定义为 virtual的函数是基类期待派生类重新定义的,基类希望派生类继承的函数不能定义为虚函数。注意:在 C++转载 2014-06-07 16:11:26 · 793 阅读 · 0 评论 -
C++ Primer 调试
使用于处理器进行调试:可使用NDEBUG与处理器变量实现有条件的调试代码:Int mian(){ #ifndef NDEBUG Cerr #endif} 如果NDEBUG未定义,那么程序就会将信息写到cerr中。如果NDEBUG已经定义了,那么程序执行时就会跳过#ifndef和#endif之间的代码。默认情况下原创 2014-06-07 17:14:18 · 1287 阅读 · 0 评论 -
C++ Primer 函数
onst形参或非const形参:指针形参是指向const类型还是非const类型,将影响函数调用所使用的实参,我们既可以用int *也可以用const int *类型的实参调用user_ptr,但仅能将int *类型的实参传递给reset函数,这个差别来源于指针初始化规则,可以将指向const对象的指针初始化为指向非const对象,但是不可以让指向非const对象的指针指向const对象。原创 2014-06-07 17:10:04 · 1260 阅读 · 0 评论 -
C++ Primer 指针
指针初始化和赋值操作的约束:对指针进行初始化或赋值只能使用以下四种类型的值:、(1)0值常量表达式,例如,在编译时可获取0值得整形const对象或字面值常量0。(2)类型匹配的对象的地址。(3)另一对象之后的下一地址。(4)同类型的另一个有效指针。把int类型变量赋给指针是非法的,尽管此int型变量可能为0,但允许把数值0或者在编译时获得0的值得const量赋给指针。I原创 2014-06-07 17:33:58 · 1215 阅读 · 0 评论 -
C++ Primer 复制控制
复制控制:当定义一个新类型的时候,需要显式或隐式地指定复制、赋值和撤销该类型的对象时会发生什么——这是通过定义特殊成员:复制构造函数、赋值操作符和析构函数来达到的。如果没有显式定义复制构造函数或赋值操作符,编译器(通常)会为我们定义。 复制构造函数是一种特殊构造函数,具有单个形参,该形参(常用const 修饰)是对该类类型的引用。当定义一个新对象并用一个同类型的对象对它进行初始化时原创 2014-06-06 20:00:08 · 555 阅读 · 0 评论 -
C++ Primer 类
类: 关键字const:const加在形参列表之后,就可以将成员函数声明为常量。如double avg_price() const; const成员不能改变其所操作的对象的数据成员,const必须同时出现在声明和定义中,若只出现在其中一处,就会出现一个编译错误。使用类型别名来简化类:class Screen { public: // inte原创 2014-06-06 19:10:12 · 524 阅读 · 0 评论 -
堆(heap)和栈(stack)有什么区别??
转自:http://www.cnblogs.com/pomp/archive/2007/10/19/930145.html简单的可以理解为: heap:是由malloc之类函数分配的空间所在地。地址是由低向高增长的。 stack:是自动分配变量,以及函数调用的时候所使用的一些空间。地址是由高向低减少的。 预备知识—程序的内存分配 一个由c/C++编译的程序占转载 2013-09-11 22:40:05 · 797 阅读 · 0 评论 -
Eclipse环境安装C/C++插件
其实运行C /C++直接用VC即可,但是有个要求必须用Eclipse开发环境,今天安装Eclipse开发环境,是做java开发的,装完了查了下要运行 C /C++环境必须要装另外的插件,装的过程中发现有直接针对C/C++开发的Eclipse环境,已经装好了java版的,只好在上面继续装相关的插件,我参照这个网址,进行安装http://www.cnblogs.com/feisky/archi原创 2013-07-18 14:16:41 · 40207 阅读 · 2 评论 -
static作用(修饰函数、局部变量、全局变量)
http://www.cnblogs.com/stoneJin/archive/2011/09/21/2183313.html 在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条。(1)先来介绍它的第一条也是最重要的一条:隐藏。当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两转载 2012-10-25 19:36:55 · 488 阅读 · 0 评论 -
C++标准转换运算符reinterpret_cast
转自http://www.cnblogs.com/ider/archive/2011/07/30/cpp_cast_operator_part3.htmlreinterpret_cast (expression)reinterpret_cast运算符是用来处理无关类型之间的转换;它会产生一个新的值,这个值会有与原始参数(expressoin)有完全相同的比特位。什么是无关类型?我没有转载 2012-09-02 18:29:31 · 627 阅读 · 0 评论 -
C与指针 笔记
内存管理:有两个内存分配函数,calloc和realloc,函数原型如下:Void *calloc(size_t num_elements, size_t element_size);Void realloc(void *ptr, size_t new_size);Calloc用于分配内存,malloc和calloc之间的区别是后者返回指向内存的指针之前把它初始化为0。原创 2014-06-09 10:19:19 · 1245 阅读 · 0 评论