【C++】
文章平均质量分 55
小王子殿下是个大帅哥
沉稳内敛kekekekkkeek
展开
-
关于typedef的用法总结
不管实在C还是C++代码中,typedef这个词都不少见,当然出现频率较高的还是在C代码中。typedef与#define有些相似,但更多的是不同,特别是在一些复杂的用法上,就完全不同了,看了网上一些C/C++的学习者的博客,其中有一篇关于typedef的总结还是很不错,由于总结的很好,我就不加修改的引用过来了,以下是引用的内容(红色部分是我自己写的内容)。typedef 不是简单的文本替转载 2014-03-15 13:34:10 · 288 阅读 · 0 评论 -
拒绝编译器默认函数
如下定义一个类:class A{};原创 2014-06-10 16:56:21 · 311 阅读 · 0 评论 -
UML类图几种关系总结
在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency) 1. 泛化(Generalization) 【泛化关系】:是一种继承关系,表示一般与特殊的关系,它指定了子类如何特原创 2014-06-30 13:38:18 · 1926 阅读 · 0 评论 -
虚拟继承
1.虚拟继承是为了防止菱形继承间接派生类han原创 2014-07-01 13:50:15 · 291 阅读 · 0 评论 -
带默认实现的纯虚函数
// pure_virtualfunction.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include using namespace std;/************************************************************************//*纯虚函数可以有默原创 2014-06-29 22:57:40 · 426 阅读 · 0 评论 -
编辑文章 - 博客频道 - CSDN.NET
1. 虚拟继承是为了防止菱形继承间接派生类含有多份虚基类成员数据2. 虚拟继承虚基类的初始化应该由最底层的派生类显示负责源代码:// virtual_inherited.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include using namespace std;/***************************原创 2014-07-01 13:53:35 · 323 阅读 · 0 评论 -
C++智能指针(auto_ptr)详解
link : http://blog.sina.com.cn/s/blog_7708265a01010lyv.html转载 2014-06-19 21:28:16 · 348 阅读 · 0 评论 -
auto_ptr实例
auto_ptr实际上就是一个模板类,用于管理new 分配资源的释放源代码原创 2014-06-19 21:59:44 · 404 阅读 · 0 评论 -
C++ 智能指针之shared_ptr
link: shared_ptr是一个引用计数智能指针,用于共享对象的所有权。它可以从一个裸指针、另一个shared_ptr、一个auto_ptr、或者一个weak_ptr构造。还可以传递第二个参数给shared_ptr的构造函数,它被称为删除器(deleter)。删除器用于处理共享资源的释放,这对于管理那些不是用new分配也不是用delete释放的资源时非常有用。shared_ptr被创建后转载 2014-06-20 22:27:48 · 331 阅读 · 0 评论 -
C++虚函数表解析
详解虚函数表:http://blog.csdn.net/haoel/article/details/1948051/转载 2014-06-10 17:28:12 · 279 阅读 · 0 评论 -
static 详解for C
link:http://www.cnblogs.com/dc10101/archive/2007/08/22/865556.htmlstatic的作用 在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条。(1)先来介绍它的第一条也是最重要的一条:隐藏。当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见转载 2014-09-23 15:48:13 · 370 阅读 · 0 评论 -
C/C++内存模型
一个由c/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3、全局区(静态区)(static)—,全局变量和静态变量原创 2014-05-21 12:26:29 · 346 阅读 · 0 评论 -
const,static 实例程序
// static.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include using namespace std;class A{private:static const int a=1;public: //void add();void display(){cout}};//in原创 2014-05-20 20:47:40 · 288 阅读 · 0 评论 -
c中两个简单的程序
今天看林锐的高质量c/c#include #include void test(char **p){ //char p[]="hello world"; //char *p=(char *)malloc(10); //strcpy(p,"hello world"); *p=(char*)malloc(100); //return p;}void ma原创 2014-05-20 17:43:42 · 297 阅读 · 0 评论 -
指针和引用的区别
指针和引用的主要区别1 . 引用必须在定义时初始化,一经初始化则引用始终指向特定的对象,而指针可以有空指针。2 . 指针之间的赋值改变的是指针指向的对象,而引用间赋值改变的是所关联对象的值而不是引用本身。example 1:#includeusing namespace std;void main(){int a1=1024,a2=1033;int *p原创 2014-03-15 12:50:23 · 457 阅读 · 0 评论 -
c_str()函数
在C中没有string该数据类型,c中字符串定义为字符数组 char a[], 要将c++中的string 对象转换成标准c中的字符串,此时需要用到c_str()函数,函数原型:const char* c_str();如下例子:#include#includeusing namespace std;void main(){ string s="hello"; c原创 2014-03-17 09:47:41 · 382 阅读 · 0 评论 -
非const 引用形参
对于非const 引用形参有以下几点要注意的:1. 非const 引用形参只能与完全同类型的非const 对象关联,请看如下例子:/* Note:Your choice is C IDE */#includeusing namespace std;int change(int &val){return ++val;}void main(){const i原创 2014-03-19 10:45:02 · 386 阅读 · 0 评论 -
malloc和new的区别
总结下malloc和new的区别。malloc和new同样是用于内存申请工作,主要区别有原创 2014-04-15 14:09:56 · 261 阅读 · 0 评论 -
C|C++中的静态全局变量,静态局部变量,全局变量,局部变量的区别
该文章出自:http://hi.baidu.com/inydprdilpbdepq/item/df74c2070b409e92a3df439aC|C++中的静态全局变量,静态局部变量,全局变量,局部变量的区别static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。面转载 2014-03-19 19:12:08 · 371 阅读 · 0 评论 -
C++中protected成员变量和private 成员变量的区别
C++中private 成员变量和protected 成员变量小结:1 . 不涉及继承的单个类中private 成员变量和protected 成员变量均不能在类外部被访问,包括“对象.成员变量”访问方式,当类对象能够调用公有函数进行访问。2 . 在继承中派生类对基类的private变量不能访问,即使调用派生类自己的公有函数,但是基类的protected变量能够被派生类函数访问。请看下面原创 2014-03-26 15:38:29 · 1154 阅读 · 0 评论 -
c++显示类型转换
本文根据平时学习,总结了C++中显示类型转换用到的三个操作符:dynamic_cast, static_cast, const_cast,1. 使用dynamic_cast 操作符将基类类型对象的引用或者指针转换为同一继承层次中其他类型的引用或者指针(运行时类型检查)。2. const_cast 操作符将变量的const性质转换掉3. static_cast (强制编译时类型转换)原创 2014-03-19 09:53:43 · 440 阅读 · 0 评论 -
异常处理小结
本文对C++异常处理机制进行了j原创 2014-04-08 11:07:50 · 367 阅读 · 0 评论 -
C中经典的helloworld程序
hello world 程序不同实现方法:1.原创 2014-04-25 14:39:24 · 394 阅读 · 0 评论 -
C++虚析构函数的作用
C++中经常将基类的析构函数定义为虚函数,其作用是当用基类原创 2014-04-12 19:32:03 · 418 阅读 · 0 评论 -
虚函数表详解
前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。 关于虚函数的使转载 2014-09-14 22:17:10 · 347 阅读 · 0 评论