我们都知道strcpy()函数是字符串拷贝函数,那么我们怎样来模拟实现这个函数呢?!首先,我们要明白,strcpy()在拷贝字符串的时候是一个一个拷贝的,直到遇到字符串结束标志‘\0‘时才停止拷贝。所以,明白了这一点,我们就可一进行简单的模拟实现了#include<stdio.h>
#..
分类:
其他好文 时间:
2016-04-07 18:42:25
阅读次数:
146
什么叫RAII(ResourceAcquisitionIsInitialization)?RAII指的就是资源分配即初始化,它的作用就是定义一个类来封装资源的分配和释放,在构造函数完成资源的分配和初始化,在析构函数完成资源的清理,可以保证资源的正确初始化和释放。它是一种技术。为什么要使用RAII?在堆上分..
分类:
其他好文 时间:
2016-04-06 18:54:12
阅读次数:
196
首先,关于这个的基本讨论已过一阶段了。现在就是合成版以后做mcfjava等的界面。
留了一个bug就是电脑解决完后会多打印几个矩阵。
改进的地方,1:增加了一种电脑解法,
2:记录用了自增栈
#include"c.h"
#include"c++.h"
#defineMAX5
#defineN10
typedefintelem_type;
classSt..
分类:
其他好文 时间:
2016-04-02 07:24:34
阅读次数:
289
1.原始版本(拷贝构造和赋值运算符重载时,需要重新开辟空间)#include<iostream>
#include<string>
usingnamespacestd;
classString
{
friendostream&operator<<(ostream&os,constString&S);
public:
String(char*str="")
:_str(newchar[..
分类:
编程语言 时间:
2016-04-01 06:43:42
阅读次数:
494
我们知道c++标准库中定义了智能指针auto_ptr,但是我们很少用它,因为虽然它能够自动回收动态开辟的内存,不需要程序员自己去维护动态开辟的内存,但是当用它去赋值或者是拷贝构造时有一个管理权转移的过程,这样我们就不能很方便的使用auto_ptr。下面是简单的auto_ptr的实现,..
分类:
编程语言 时间:
2016-03-30 18:04:49
阅读次数:
245
栈提供了以下操作:/*cpp*/
s.empty()//如果栈为空返回true,否则返回false
s.size()//返回栈中元素个数
s.pop()//删除栈顶元素,但不返回其值
s.top()//返回栈顶元素,但不删除元素
s.push()//在栈顶压入新元素模拟实现:/*Stack.cpp*/
#include<iostream>
usingnamesp..
分类:
其他好文 时间:
2016-03-29 19:45:12
阅读次数:
163
#define_CRT_SECURE_NO_WARNINGS
#include<iostream>
usingnamespacestd;
template<classT>
classAuto_ptr
{
public:
Auto_ptr(T*_x):x(_x)
{}
Auto_ptr(Auto_ptr<T>&s):x(s.x)
{
s.x=NULL;
}
Auto_ptr&operator=(Auto_ptr<T>&s)
{
x=s...
分类:
编程语言 时间:
2016-03-26 08:49:48
阅读次数:
263
一线程的本质
二线程模型引入是为了数据共享为什么又引入线程私有数据
三线程特定数据
四关键函数说明
五刨根问底啥原理
六私有数据使用示例
七参考文档一、线程的本质Linux线程又称轻量进程(LWP),也就说线程本质是用进程之间共享用户空间模拟实现的。二、线程模型引入是为了数据共享,为什么又引入线程私有数据?有时候想让基于进程的接口适应多线程环境,这时候就需要为每个线程维护一份私有数据了,最典型的就是...
分类:
编程语言 时间:
2016-03-26 07:03:45
阅读次数:
404
模拟实现AutoPtr、ScopedPtr、SharedPtr智能指针实际上就是能够智能化的管理动态开辟空间的内存释放问题,C++中引入智能指针,很大一方面是当我们在动态开辟空间时,由于一些疏忽,或者说是对于一些代码,执行的顺序不是我们预期能够想到的,导致一些内存泄露的问题,使得程序..
分类:
其他好文 时间:
2016-03-24 18:38:40
阅读次数:
167
RAII(ResourceAcquisitionIsInitialization)资源分配即初始化,定义一个类来封装资源的分配和释放,在构造函数完成资源的分配和初始化,在析构函数完成资源的清理,可以保证资源的正确初始化和释放。智能指针:用自动化或者说智能的指针来实现对动态内存的释放。它是一个类,有..
分类:
其他好文 时间:
2016-03-23 23:49:17
阅读次数:
217