摘要: 如何让对话框右上角那个关闭按钮(X)变灰,也就是把它Disable再OnInitDialog()中添加:GetSystemMenu(FALSE)-> EnableMenuItem(SC_CLOSE,MF_BYCOMMAND|MF_GRAYED); 阅读全文
posted @ 2011-10-26 15:54 likebeta 阅读(757) 评论(0) 推荐(0) 编辑
摘要: #if !defined(AFX_SEARCHBOX_H__4AAEB096_F117_4139_8F63_94C9E64041E5__INCLUDED_)#define AFX_SEARCHBOX_H__4AAEB096_F117_4139_8F63_94C9E64041E5__INCLUDED_#if _MSC_VER > 1000#pragma once#endif // _MSC_VER > 1000// MySearchBox.h : header file////////////////////////////////////////////////////////// 阅读全文
posted @ 2011-10-20 22:17 likebeta 阅读(846) 评论(0) 推荐(0) 编辑
摘要: (178, 2, 'views', '2856'),(180, 128, 'views', '586'),(182, 136, 'views', '542'),(184, 139, 'views', '521'),(186, 146, 'views', '973'),(188, 158, 'views', '932'),(189, 162, 'views', '447'), 阅读全文
posted @ 2011-10-18 19:52 likebeta 阅读(1098) 评论(0) 推荐(0) 编辑
摘要: #include <stdexcept>template <typename T,int MAXSIZE>class Stack{private: T elems[MAXSIZE]; int numElems;public: Stack(); void push(T const&); void pop(); T top() const; bool empty() const{return numElems==0;} bool full() const {return numElems==MAXSIZE;}};//构造函数template <typ... 阅读全文
posted @ 2011-10-17 10:20 likebeta 阅读(1426) 评论(0) 推荐(0) 编辑
摘要: #include <iostream>using namespace std;//求两个int值的最大值inline int const& max(int const& a,int const& b){ return a<b ? b:a;}//求两个任意类型值中的最大者template <typename T>inline T const& max(T const& a,T const& b){ return a<b ? b:a;}int main(){ ::max(7.0,42.0);//调用max<d 阅读全文
posted @ 2011-10-14 09:41 likebeta 阅读(453) 评论(0) 推荐(0) 编辑
摘要: #include <iostream>using namespace std;class Base{public: void fm(){cout<<"base::fm()\n";} void fm(int){cout<<"base::fm(int)\n";}};class D:public Base{public: //using Base::fm; void fm(){cout<<"D::fm()\n";}};int main(){ D d; d.fm(); d.fm(1);//err 阅读全文
posted @ 2011-10-13 16:04 likebeta 阅读(520) 评论(0) 推荐(0) 编辑
摘要: #include <iostream>using namespace std;void print(){ cout<<"in the print function"<<endl;}int main(){ //使用typedef方法 typedef void (*func)(); func fun=print; fun(); //直接定义 void (*f)()=print; f(); return 0;}一般typedef使用的比较常见,在导出dll方法的时候使用的较多 阅读全文
posted @ 2011-10-13 15:59 likebeta 阅读(233) 评论(0) 推荐(0) 编辑
摘要: #include <iostream>using namespace std;class B{ public: virtual void fun(int nNoUse=0) const=0;};class D1:public B{ public: virtual void fun(int nNoUse=1) const{cout<<nNoUse<<endl;}};class D2:public B{ public: virtual void fun(int nNoUse) const{cout<<nNoUse<<endl;}};int 阅读全文
posted @ 2011-10-13 15:52 likebeta 阅读(434) 评论(0) 推荐(0) 编辑
摘要: 公有继承(public)、私有继承(private)、保护继承(protected)是常用的三种继承方式。1. 公有继承(public)公有继承的特点是基类的公有成员和保护成员作为派生类的成员时,它们都保持原有的状态,而基类的私有成员仍然是私有的,不能被这个派生类的子类所访问。2. 私有继承(private)私有继承的特点是基类的公有成员和保护成员都作为派生类的私有成员,并且不能被这个派生类的子类所访问。3. 保护继承(protected)保护继承的特点是基类的所有公有成员和保护成员都成为派生类的保护成员,并且只能被它的派生类成员函数或友元访问,基类的私有成员仍然是私有的。下面列出三种不同的继 阅读全文
posted @ 2011-10-12 20:54 likebeta 阅读(24626) 评论(0) 推荐(3) 编辑
摘要: 1、函数指针的声明格式: 函数返回值类型(*指针变量名)(参数类型列表) 或者是: typedef 函数返回值类型 (*指针变量名)(参数类型列表)2.使用typedef你可以使用typedef来隐藏一些指向成员函数的复杂指针。例如,下面的代码定义了一个类A中的成员函数的指针PMA,并传递char *和const char *参数。typedef void(A::*PMA)(char *, const char *); PMA pmf= &A::strcat; // use a typedef to define a pointer to member 使用type... 阅读全文
posted @ 2011-10-12 16:22 likebeta 阅读(711) 评论(0) 推荐(0) 编辑