- 博客(67)
- 资源 (5)
- 收藏
- 关注
原创 MFC第一个例子 -- windows程序运行原理
#include #include #include #pragma comment (lib,"User32.lib")#pragma comment (lib,"Gdi32.lib")LRESULT CALLBACK WinSunProc( HWND hwnd, // handle to window UINT uMsg, // message ide
2014-10-29 22:47:01 720
原创 ubuntu中写一个shell脚本的过程
gedit hello.sh ,然后输入#!/bin/bashecho "Hello world!"chmod +x hello.sh./hello.sh
2014-10-28 11:02:50 9778
原创 error LNK2019: 无法解析的外部符号 __imp__DispatchMessageW@4,该符号在函数 _WinMain@16 中被引用
出现错误:1>WinMain.obj : error LNK2019: 无法解析的外部符号 __imp__DispatchMessageW@4,该符号在函数 _WinMain@16 中被引用1>WinMain.obj : error LNK2019: 无法解析的外部符号 __imp__TranslateMessage@4,该符号在函数 _WinMain@16 中被引用1>WinMain
2014-10-28 09:01:28 6846
原创 消息及消息队列
操作系统将每个事件都包装成一个称为消息的结构体MSG来传递给应用程序SG来传递给应用程序typedef struct tagMSG { HWND hwnd; //句柄(HANDLE),资源的标识。 UINT message; //无符号的整型 WPARAM wParam; //整型,消息的附加信息 LPARAM lPara
2014-10-26 11:03:32 833
原创 Ubuntu 10.04 右上角网络管理图标消失的解决办法
那个显示网络状态的那个图标,叫做:network-manager。如果是有线网络连接的话,是上下两个箭头,如果是无线网络的话,是一个发射信号的形状。sudo gedit /etc/NetworkManager/nm-system-settings.conf把 false 改成 true 保存 退出sudo service network-manager restart此
2014-10-25 14:58:14 2066
转载 再谈动态联编
联编就是将模块或者函数合并在一起生成可执行代码的处理过程,同时对每个模块或者函数调用分配内存地址,并且对外部访问也分配正确的内存地址。按照联编所进行的阶段不同,可分为两种不同的联编方法:静态联编和动态联编。在编译阶段就将函数实现和函数调用关联起来称之为静态联编,静态联编在编译阶段就必须了解所有的函数或模块执行所需要检测的信息,它对函数的选择是基于指向对象的指针(或者引用)的类型。反之在程序执行的时
2014-10-18 11:22:05 969
原创 脚本文件2
#include #include #include #include using namespace std;char tt[100];void GetChar (const char* buf,char* begin,char* end){ char* temp = new char[1000]; strcpy(temp,buf);//拷贝给temp w
2014-10-16 16:06:38 570
原创 编写自己的list容器
//编写自己的容器#include #include templateclass List{public: List() { _pHead = NULL; _pTail = NULL; } struct Node { T data; Node* pNext; };
2014-10-16 11:34:17 631
原创 迭代器
迭代器对所有的容器是通用的。#include #include #include #includeusing namespace std;#include class student{public: void showID() { cout<<m_ID<<endl; } student(char* name,int ID)//构
2014-10-16 10:43:28 512
原创 容器map
#include #include #include using namespace std;#include class student{public: void showID() { cout<<m_ID<<endl; } student(char* name,int ID)//构造函数 { m_ID =
2014-10-16 10:33:20 430
原创 序列式容器vector和deque
#include #include #include using namespace std;void main(){ vector ivec;//定义一个容器 ivec.push_back(10);//向数组后面添加 ivec.push_back(20); ivec.push_back(30); ivec.push_back(40); i
2014-10-16 09:48:59 405
原创 结构体模板
#include #include using namespace std;template //结构体模板struct Node{ T nData;//成员数据 Node* pNext;//节点的指针,数据结构课程里边大量出现};void main(){ Node iNode; iNode.nData = 10; Node fNode
2014-10-15 18:33:58 768
原创 宏的举例
#include #include using namespace std;#define PI 3.141592657#define TEST "hello"#define MAX(a,b) (a>b?a:b)//宏函数#define MUL(a,b) (a*b)#define SafeDeleteArry(p) \ if(p != NULL)\ {
2014-10-15 18:16:36 543
原创 虚析构函数
#include #include using namespace std;class Base{public: Base() { cout<<"Base的构造函数"<<endl; } virtual ~Base()//虚析构函数 { cout<<"Base的析构函数"<<endl; }};class S
2014-10-15 17:36:37 426
原创 纯虚函数
#include #include using namespace std;class Base//纯虚函数,抽象类{public: virtual void go() = 0//纯虚函数 { cout<<"Base的go()"<<endl; }};class Sub : public Base//派生类{public: virtual
2014-10-15 17:21:43 573
原创 动态联编
#include #include using namespace std;class CBuilding//父类{//定义建筑类string name; //定义名称public: void set(string strName); //修改名称 virtual void display() //显示信息,这里是内联函数,而且声明为虚函数 { cou
2014-10-15 17:01:21 761
原创 多重继承
#include using namespace std;class A{public: virtual void go() { cout<<"A的go()"<<endl; }};class B:public A{public: void go() { cout<<"B的go()"<<endl; }}
2014-10-15 16:13:06 482
原创 继承
#include using namespace std;//父类class Object{public: virtual void show() { cout<<"Object show"<<endl; }};//怪物类class Monster: public Object{ virtual void show() {
2014-10-15 16:03:43 398
原创 子类和父类 构造函数和析构函数
#include using namespace std;//运算符的重载class Person//人{public: int a; Person() { cout<<"父类的不带参的构造函数调用"<<endl; } Person(int a) { cout<<"父类的带参数的构造函数调用"<<endl;
2014-10-15 14:54:00 1295
原创 运算符重载 加减乘除
#include using namespace std;//运算符的重载class A{public: A(int x) { a = x; } ~A() { } //运算符重载函数+=;加法 A operator +=(const A&b) { this->a = this->a+
2014-10-15 11:34:32 6307 1
原创 友元类
#include #include "student.h"using namespace std;class A;class B{public: friend class A;//声明A是B的友元,这样A就可以访问B的私有空间private: int a;};class A{public: void go(B* p) { p-
2014-10-15 10:59:40 526
转载 深拷贝和浅拷贝
一、默认拷贝构造函数 很多时候在我们都不知道拷贝构造函数的情况下,传递对象给函数参数或者函数返回对象都能很好的进行,这是因为编译器会给我们自动产生一个拷贝构造函数,这就是“默认拷贝构造函数”,这个构造函数很简单,仅仅使用“老对象”的数据成员的值对“新对象”的数据成员一一进行赋值,它一般具有以下形式:Rect::Rect(const Rect& r){ width = r.w
2014-10-14 22:56:33 478
原创 复制构造函数
#includeusing namespace std;class A{public: A(){} A(A&one)//复制构造函数 { this->n=one.n; this->m=one.m; } A(int i,int j) { n=i; m=j; } vo
2014-10-14 22:53:13 471
原创 C语言的文件流
FILE 文件结构体fopen 打开某个硬盘上的数据文件fwrite 向文件里写入数据fread 向文件里读取数据fclose 关闭文件流
2014-10-14 17:44:31 765
原创 内存拷贝memcpy()和填充函数memset()
void *memcpy(void *dest, const void *src, size_t n);从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中#include #include #include using namespace std;void main(){ int a[] = {1,2,3,4,5}; in
2014-10-14 09:52:29 1945
原创 switch的菜单功能
#include //switch的菜单功能using namespace std;int main(){ bool quit=false; for(;;) { char choice; cout<<"0 1 2 3 4 5"<<endl; cin>>choice; switch(choice) {
2014-10-13 15:33:52 3633
原创 构造函数和析构函数
#include using namespace std;class A{public: A();//构造函数 ~A();//析构函数,都不能有返回值}; A::A() { cout<<"构造函数执行完毕"<<endl; } A::~A() { cout<<"析构函数执行完毕"<<endl; }in
2014-10-13 15:31:34 380
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人