c++MFC学习笔记
文章平均质量分 57
Hustudent20080101
MFC Qt 瑞萨 ARM Linux
展开
-
CFile f; CFileException e; if(!f.Open(pFileName,CFile::modeRead...
#include#include#includeint main(){ CFile f; CFileException e; char* pFileName="d:\\test.dat"; if(!f.Open(pFileName,CFile::modeRead,&e)) { cout<<("Open File Failed!")<<endl; } else { c原创 2012-03-24 21:02:27 · 1108 阅读 · 0 评论 -
两个类互为成员变量
#includeclass B;class A{public: B* m_pB; void fun();};class B{public: B() { m_a.m_pB=this; } A m_a; void fun() { cout<<"B::fun()"<<endl; m_a.fun(); }};void A::fun() {原创 2012-03-08 11:38:26 · 1458 阅读 · 0 评论 -
C读文件
switch(id) { case IDM_OPEN: { FILE *fp=fopen("c:/test.txt","r"); char buf[256]; fgets(buf,sizeof(buf),fp); fclose(fp); SetDlgItemText(hwnd,IDC_EDIT1,buf); //MessageBox(原创 2012-03-08 13:44:58 · 561 阅读 · 0 评论 -
RichEditDemo
int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow){ //Enable IPAddress、Calenda原创 2012-03-08 14:00:55 · 767 阅读 · 0 评论 -
CSemaphore semaphoreWrite(2,2);
/*CSemaphore (LONG lInitialCount=1,LONG lMaxCount=1,LPCTSTR pstrName=NULL,LPSECURITY_ATTRIBUTES lpsaAttributes=NULL); lInitialCount:信号量对象的初始计数值,即可访问线程数目的初始值; lMaxCount:信号量对象计数值的最大值,该参数决定了同一时转载 2012-03-23 22:52:58 · 745 阅读 · 0 评论 -
CEvent eventWriteD.SetEvent();
CEvent eventWriteD;char g_Array[10];UINT WriteW(LPVOID pParam);UINT WriteD(LPVOID pParam);void CMultiThread9Dlg::OnWritew() { // TODO: Add your control notification handler code here CWinThre转载 2012-03-23 22:32:50 · 744 阅读 · 0 评论 -
MFC init
//首先,在文件中加入如下头文件语句:#ifndef VC_EXTRALEAN#define VC_EXTRALEAN // 从 Windows 头中排除极少使用的资料#endif#include #include // MFC 核心组件和标准组件#include // MFC 扩展 #pragma comment(lib,"ker转载 2012-03-25 11:00:53 · 859 阅读 · 0 评论 -
在指定的内存地址创建对象
// Test.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include "ioStream.h"#include //类class Test{public://构造方法 Test() { cout << "创建" << endl; } ~Test(原创 2012-03-08 13:02:12 · 935 阅读 · 0 评论 -
mciSendString
case IDC_OPEN: {OPENFILENAME ofn;char szFile[MAX_PATH];ZeroMemory(&ofn,sizeof(ofn));ofn.lStructSize = sizeof(ofn);ofn.lpstrFile = szFile;ofn.lpstrFile[0] = TEXT('\0');ofn.nMaxFile = sizeof(sz原创 2012-03-08 22:42:53 · 561 阅读 · 0 评论 -
mciSendString
// mcicmd.cpp : Defines the entry point for the console application.//#include "stdafx.h"#pragma comment(lib,"winmm.lib") int main(int argc, char* argv[]){ if(argc<3) { printf("usage:\nmcic原创 2012-03-09 09:43:11 · 611 阅读 · 0 评论 -
HELLO_FUNC phello_fun=&test::hello; (p->*phello_fun)();
#include #include class test { public: test(int i){ m_i=i;} test(){}; void hello() { printf("hello\n"); } private: int m_i; }; /*int main() { test *p=new test(); p->hell转载 2012-03-26 18:31:41 · 602 阅读 · 0 评论 -
cout<<"Press any key to exit!\n"<<endl;
#include #include #include int main(){ CFile f; CFileException e; char* pFileName="d:\\test.dat"; if(!f.Open(pFileName,CFile::modeRead,&e)) { cout<<("Open File Failed!")<<endl; } //*原创 2012-03-26 09:09:40 · 726 阅读 · 0 评论 -
mciSendString("play movie",buf,sizeof(buf),NULL)
#include#pragma comment(lib,"winmm.lib") char buf[256];void CMyPlayerDlg::OnOpen() { // TODO: Add your command handler code here CStatic* pStatic=(CStatic*)GetDlgItem(IDC_STATIC_PIC); HWND h=原创 2012-03-09 12:24:08 · 868 阅读 · 0 评论 -
void Validate(double x); ::Validate(2.0f);
// P95.cpp : Defines the entry point for the console application.//#include "stdafx.h"void Validate(float x){ printf("float\n");}void Validate(int x){ printf("int\n"); }int main(int a转载 2012-03-26 20:24:12 · 511 阅读 · 0 评论 -
A* obj=new C(); obj->fun(); class C:public B { private: virtual fun()
// tmpDerive.cpp : Defines the entry point for the console application.//#include "stdafx.h"class A{public: virtual fun() { printf("A!\n"); }};class B:public A{protected: virtual fun()原创 2012-03-26 20:44:35 · 918 阅读 · 0 评论 -
memcpy(&func2,&phello_fun,sizeof(phello_fun));
#include #include class test { public: test(int i){ m_i=i;} test(){}; void hello() { printf("hello\n"); } private: int m_i; }; /*int main() { test *p=new test(); p->hello(转载 2012-03-26 18:12:49 · 674 阅读 · 0 评论 -
(deriveObj.*pVIDeriveMemFunc)(20);
// test.cpp : Defines the entry point for the console application.//#include "stdafx.h"class Base {public: //ordinary member function void setValue(int iValue){printf("Base::setValue(%d)原创 2012-03-26 18:56:26 · 488 阅读 · 0 评论 -
typedef int (A::*Myfunction)(int); B* pB = new B; Myfunction pf = (Myfunction)(&B::Fb);
// ImInDerived.cpp : Defines the entry point for the console application.//#include "stdafx.h"#includeclass A{public: A(){}; virtual ~A(){};};class B : public A{public: B(){}; ~B(){};转载 2012-03-26 19:05:07 · 735 阅读 · 0 评论 -
OutputInfo(int num,...)//定义一个省略号参数的函数
// OutputInfo.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include "stdio.h"#include void OutputInfo(int num,...) //定义一个省略号参数的函数{ va_list arguments;转载 2012-03-26 20:14:54 · 1436 阅读 · 0 评论 -
if((c>=’A’)&&(c<=’Z’)) 判断c是否是大写字母
1、 学会省力气的编程方法很多考生在编程中做了很多费力不讨好的事情。例如:c是一个char类型的变量,程序要求判断c是否是大写字母。有的人就开始在大脑中努力搜寻已经背了N遍的ASCII编码表,终于写出了下面的代码:if((c>=65)&&(c<=90))……值得庆幸的是,他的记忆力很好,没有背错ASCII编码表。如果背错了的话,那就有可能上机考试就要重考了!其实有完全不用使用ASCII编转载 2012-03-27 15:58:00 · 3039 阅读 · 0 评论 -
求ax^2+bx+c=0的根
求ax^2+bx+c=0的根分析:因为当b^2-4ac>=0时,方程有两个实根,否则(b^2-4ac<0)有两个共轭复根。其程序段如下:d=b*b-4*a*c;if(d>=0){x1=(-b+sqrt(d))/2a;x1=(-b-sqrt(d))/2a;printf(“x1=%8.4f,x2=%8.4f\n”,x1,x2);}else{r=-b/(2*a);i =sqrt转载 2012-03-27 16:08:36 · 1001 阅读 · 0 评论 -
求两个正整数的最大公约数
求两个正整数的最大公约数假设两个正整数用u和v表示,算法采用辗转相除法,具体描述如下:(1) 求出u%v的值并赋给变量r:r=u%v(2) 进行迭代:u=v;v=r;(3) 看v是否为0,若是,则u即为所要求的值,否则,转到(1)。程序如下:int getcd(int u,int v){int r;while(v!=0){r=u%v;u=v; v=r;}return u转载 2012-03-27 16:14:28 · 989 阅读 · 1 评论 -
求两个整数的最小公倍数
求两个整数的最小公倍数假设两个整数为x和y。算法1:(1)先求出x和y的最大公约数,并赋给变量r;(2)x和y的最小公倍数即为:x*y/r程序如下:int getm(int x,int y){int r;r=getcd(x,y);return x*y/r;}该方法需调用求最大公约数函数。算法2:(1)将两数中较小的数放在x中,较大数保存在y中。(2)判断y是否为x的整转载 2012-03-27 16:17:10 · 2442 阅读 · 0 评论 -
try throw catch
// except.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include "string.h"class CDivZeroException //定义一个除零的异常类{public: char ExceptionMsg[128]; //定义数据转载 2012-03-27 22:07:14 · 529 阅读 · 0 评论 -
hello163
//#include #include #include #pragma comment(lib,"ws2_32.lib")void ShowError(){ TCHAR* lpMsgBuf; FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER| //自动分配消息缓冲区 FORMAT_MESSAGE_FROM_SYSTEM, //从系统获取信原创 2012-03-11 20:02:44 · 667 阅读 · 0 评论 -
gethostbyname
#include #include #include #pragma comment(lib, "ws2_32")using namespace std;int main(){ int WSA_return; WSADATA WSAData; /*******************************************************************转载 2012-03-11 19:30:21 · 569 阅读 · 0 评论 -
判断一个数是否是素数
判断一个数是否是素数给定一个整数,判断它是否是素数。由数学知识可得知:只要m能被2,3,…,m-1中的任何一个数整除,那么它就不是素数,否则就是素数。根据这一思路,我们用一个循环过程及判断一个数是否能被整除的方法构造出下面的算法:int isp(int m){int i=0;for(i=2;i<m;i++)if(m%i==0) return 0;return 1;}思路非常清晰:转载 2012-03-27 16:11:31 · 1392 阅读 · 0 评论 -
m_Time = CTime::GetCurrentTime();
void CCreateIDDlg::OnButcreate() { // TODO: Add your control notification handler code here UpdateData(TRUE); m_ID = m_Date.Format("%Y%m%d"); m_ID += m_Time.Format("%H%M%S"); UpdateData(FALSE);转载 2012-03-28 22:02:47 · 995 阅读 · 0 评论 -
ODBC MYSQL
#include "stdafx.h"#include #include #include "resource.h"#include "MainDlg.h"//kernel32.lib user32.lib gdi32.lib winspool.lib //comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib// u转载 2012-03-12 20:45:22 · 883 阅读 · 0 评论 -
ReleaseBuffer只有一个作用,就是更新字符串的长度
void CStringBufferDlg::OnButton1() { // TODO: Add your control notification handler code hereCString WeatherZone = "";int strLen = this->m_WeatherZone.GetLength();memcpy(WeatherZone.GetBuffer(s原创 2012-03-29 09:59:33 · 793 阅读 · 0 评论 -
memset(&si, 0, sizeof(STARTUPINFO)); CreateProcess
#include #include using namespace std; int main() { /* STARTUPINFO si; memset(&si, 0, sizeof(STARTUPINFO)); si.cb=sizeof(STARTUPINFO); si.wShowWindow=SW_SHOW; si.dwFlags=ST转载 2012-03-12 10:40:49 · 1602 阅读 · 0 评论 -
void DBInsert(HWND hwnd) void DBLogin(HWND hwnd)
void DBInsert(HWND hwnd){ SQLHENV henv = NULL; SQLHDBC hdbc = NULL; SQLHSTMT hstmt = NULL; SQLRETURN result; SQLCHAR ConnStrIn[MAXBUFLEN] = "DRIVER={MySQL ODBC 5.1 Driver};SERVER=127.0.0.1;UID=r原创 2012-03-13 16:38:07 · 899 阅读 · 0 评论 -
str2num
// str2num.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include "math.h"int str2num(char *s){ char ch; int i=0; int a[255]; int sum=0; do { ch=s[i];原创 2012-03-29 15:13:57 · 2114 阅读 · 0 评论 -
SendDlgItemMessage(hwnd,IDC_LIST1,LB_ADDSTRING,0,(LPARAM)"ccc");
void Main_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify){ switch(id) { case IDC_OK: { //MessageBox(hwnd,TEXT("欢迎访问如鹏网 www.RuPeng.com 大学生计算机学习社区"),TEXT("问好"),MB_OK);原创 2012-03-13 21:17:44 · 1594 阅读 · 0 评论 -
Dlg1::Dlg1(int i,CWnd* pParent /*= NULL*/) : CDialog(Dlg1::IDD, pParent)
void CDlgParamDlg::OnButton1() { // TODO: Add your control notification handler code hereDlg1 dlg(100);//dlg.m_n=100;dlg.DoModal(); }Dlg1::Dlg1(int i,CWnd* pParent /*= NULL*/) : CDialog(Dlg1:原创 2012-03-13 20:14:01 · 3978 阅读 · 3 评论 -
SetWindowLong(hwnd,GWL_USERDATA,lParam); puser1=(PUserInfo)GetWindowLong(hwnd,GWL_USERDATA);
typedef struct _usersInfo{ char userName[256]; char passWord[256];}UserInfo,*PUserInfo;void Main_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify){ switch(id) { case I原创 2012-03-13 20:44:11 · 1828 阅读 · 0 评论 -
EndDialog(hwnd, IDOK); if(IDOK==returncode)
void Dlg1_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify){ switch(id) { case IDOK: { PUserInfo puser1; puser1=(PUserInfo)GetWindowLong(hwnd,GWL_USERDATA); /* ch原创 2012-03-13 20:57:33 · 988 阅读 · 0 评论 -
scanf("%d",&choose); getchar();
#include "stdafx.h"#include "conio.h"#include int main(int argc, char* argv[]){ char c; int input,choose;begin: system("cls"); printf("input (choose)(1:ascii2char,2:char2ascii):\n"); scanf("原创 2012-03-14 10:24:18 · 764 阅读 · 0 评论 -
const IID IID_IUnknown
EXTERN_C const IID IID_IUnknown;#if defined(__cplusplus) && !defined(CINTERFACE)#if (_MSC_VER >= 1200) // VC6 or greaterextern "C++"{#endif MIDL_INTERFACE("00000000-0000-0000-C000-00000000转载 2012-03-30 12:30:57 · 1959 阅读 · 0 评论 -
MIDL_INTERFACE("00000001-0000-0000-C000-000000000046") IClassFactory : public IUnknown
EXTERN_C const IID IID_IClassFactory;#if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00000001-0000-0000-C000-000000000046") IClassFactory : public IUnknown { pu转载 2012-03-30 21:17:35 · 1697 阅读 · 0 评论