头文件
/**
* 功能:句柄类,头文件只包含公共的接口和单一的指针,该指针指向一个没有
完全定义的类
* 时间:2014年8月25日07:52:42
* 作者:cutter_point
*/
#ifndef HANDLE_H_INCLUDED
#define HANDLE_H_INCLUDED
class Handle
{
struct Cheshire; //...
分类:
编程语言 时间:
2014-08-25 10:07:34
阅读次数:
240
/**
* 功能:嵌套友元
* 时间:2014年8月21日07:21:29
* 作者:cutter_point
*/
#include
#include //为了初始化时使用memset()
#include
using namespace std;
const int sz=20;
struct Holder
{
private:
int a[sz]; //一个整形...
分类:
编程语言 时间:
2014-08-21 09:53:23
阅读次数:
238
/**
* 功能:public的作用
* 时间:2014年8月20日16:11:23
* 作者:cutter_point
*/
struct A
{
int i;
float f;
char j;
void func();
};
void A::func() {}
struct B
{
public: //这里加和不加的结果是一样的,因为struct默...
分类:
编程语言 时间:
2014-08-20 16:20:22
阅读次数:
194
/**
* 功能:友元
* 时间:2014年8月20日16:13:42
* 作者:cutter_point
*/
/*
*编译器知道如何传递一个地址,这一个地址具有固定的大小,而不管被传递的是什么对象
*然而试图传递整个对象的话,那么编译器就必须知道X的全部定义以确定他的大小以及如何
*传递,所以程序就无法声明一个类似于Y::g(X)的函数,所以下面的f(X*)函数必须是指针
*/
struct...
分类:
编程语言 时间:
2014-08-20 16:20:12
阅读次数:
173
/**
* 功能:探讨private的作用
* 时间:2014年8月20日16:12:35
* 作者:cutter_point
*/
struct B
{
private:
char j;
float f;
public:
int i;
void func();
};
void B::func()
{
i=0;
j='0';
f=0.0;...
分类:
编程语言 时间:
2014-08-20 16:20:02
阅读次数:
196
/**
* 功能:全局作用域解析
* 时间:2014年8月19日10:51:32
* 作者:cutter_point
*/
int a; //全局
void f(){} //全局
struct S
{
int a;
void f();
};
void S::f()
{
::f(); //外面那个。全局的
::a++; //外面那个全局...
分类:
编程语言 时间:
2014-08-19 10:56:04
阅读次数:
215
头文件
/**
* 功能:下推栈(push_down stack)不会越出内存
* 时间:2014年8月18日08:13:36
* 作者:cutter_point
*/
#ifndef STACK_H_INCLUDED
#define STACK_H_INCLUDED
struct Stack
{
struct Link
{
void* data; //这个结构...
分类:
编程语言 时间:
2014-08-18 09:18:33
阅读次数:
326
/**
* 功能:用sizeof运算符可以确定struct的长度。
* 时间:2014年8月18日08:10:14
* 作者:cutter_point
*/
#include"CLib.h"
#include"CppLib.h"
#include
using namespace std;
struct A
{
int i[100];
};
struct B
{
void f...
分类:
编程语言 时间:
2014-08-18 09:18:23
阅读次数:
204
/**
* 功能:一个袖珍的C库
* 时间:2014年8月17日08:05:26
* 作者:cutter_point
*/
//这个头文类似一个C的库
#ifndef CLIB_H_INCLUDED
#define CLIB_H_INCLUDED
typedef struct CStashTag
{
int size; //每个小空间的大小
int quantit...
分类:
编程语言 时间:
2014-08-17 08:07:51
阅读次数:
234
/**
* 功能:创建两个函数,一个接受一个string*参数,另外一个接受一个string&参数。每个
* 函数必须用它特有的方式去改变外部的string对象。在main()中,创建和初始化一个
* string对象,输出它,然后传给每个函数,输出结果。
* 时间:2014年8月16日12:24:50
* 作者:cutter_point
*/
#include
#inclu...
分类:
编程语言 时间:
2014-08-16 12:33:40
阅读次数:
234