
c++
xieziwei2008
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
AFX_MSG是什么意思
以前一直不知道AFX_MSG是什么意思,只是觉得它应该是个消息映射函数,但是具体代表什么意思,会返回一个什么样的值是一点都不清楚,今天查了下资料,把查到的东西放这,以免以后忘了还得再查。 afx_msg 是一个宏 标识是消息映射函数,增加可读性。 在 MSDN里是这样定义的: AFX_MSG remarks转载 2012-08-01 14:33:15 · 1358 阅读 · 0 评论 -
指向多维数组的指针变量
1 多维数组的指针多维数组可以看作是一维数组的延伸,多维数组的内存单元也是连续的内存单元。换句话说,C语言实际上是把多维数组当成一维数组来处理的。下面以二维数组为例说明这个概念。比如,现在有一个int型的二维数组a[3][4],计算机认为这是一个一维的数组a[3],数组的三个元素分别是a[0],a[1]和a[2]。其中每个元素又是一个一维数组,例如a[0]又是一个包含a[0][0],a[0原创 2014-04-20 21:01:24 · 837 阅读 · 0 评论 -
c# MessageBox 用法大全
http://www.cnblogs.com/Tammie/archive/2011/08/05/2128623.htmlc# MessageBox 用法大全 我们在程序中经常会用到MessageBox。 MessageBox.Show()共有21中重载方法。现将其常见用法总结如下: 1.MessageBox.Show("Hello~~~~");最简单转载 2014-05-06 15:29:10 · 541 阅读 · 0 评论 -
宏定义是替换
#define Add(a,b) a+b;在一般使用的时候是没有问题的,但是如果遇到如:c * Add(a,b) * d的时候就会出现问题,代数式的本意是a+b然后去和c,d相乘,但是因为使用了define(它只是一个简单的替换),所以式子实际上变成了c*a + b*d原创 2014-04-20 20:58:11 · 557 阅读 · 0 评论 -
vs2008 无法设置断点&设置内存断点的方法
程序移植到新vs2008环境中发现不能设置断点,查了下才知道是源文件版本对应问题,这样设置一下就可以了:VS 2008中选择 工具-> 选项->调试->常规中有个选项,要求源文件与原始版本完全匹配,vs2008默认的是选中的,取消就OK了! 如果是在debug下: 1.检查工程配置是否设置正确。 C++>General-转载 2013-11-17 12:24:40 · 1081 阅读 · 0 评论 -
String转char *,以便于使用fun(char *)函数
假设我要使用一个别人写好的f(char *)函数,但是我只有一个string对象 string s="hello"因为f的参数类型是char*, 而s的类型是string,那该怎么办呢?一、尝试一:使用c_str()函数 (×)好在string类提供了一个c_str函数,能够返回底层的char*指针所以我们打算这样用:f(s.c_str())但是这是错误的,因为c_str返原创 2013-10-22 19:14:00 · 637 阅读 · 0 评论 -
MessageBox()的错误解决、_T()和L的解释和区别
一、MessageBox(); 使用时出现的错误解决办法在MFC中用MessageBox("内容","标题",MB_OKCANCEL);有时候会出现 “CWnd::MessageBoxW”: 不能将参数 1 从“const char [19]”转换为“LPCTSTR”解决办法一:未设置unicode数据集就可以解决 MessageBox("内容","标题",M原创 2013-10-21 10:16:54 · 5013 阅读 · 0 评论 -
解决fstream.open()不能正确读取中文路径的问题
解决fstream.open()不能正确读取中文路径的问题std::locale loc = std::locale::global(std::locale(""));//必须添加下面这句恢复,否则std::cout将无法正确输出中文名std::locale::global(loc);原创 2013-10-20 22:27:33 · 1624 阅读 · 0 评论 -
fstram.open()的实参形参问题
一、fstream file;file.open(str.c_str());open函数的实参应该为C风格字符串,还不是标准库string对象。调用c_str()转换成c风格字符串。二、//做形参可以用指针、引用。//这里用指向char字符串的指针做形参void CLoadObj::readobj(const char* str)fstream objfile原创 2013-10-20 22:30:22 · 596 阅读 · 0 评论 -
#pragma once&&#ifndef解释:头文件只被编译一次
一、#pragma once&&#ifndef解释#pragma once这是一个比较常用的C/C++杂注,只要在头文件的最开始加入这条杂注,就能够保证头文件只被编译一次。#ifndef,#define,#endif是C/C++语言中的宏定义,通过宏定义避免文件多次编译。所以在所有支持C++语言的编译器上都是有效的,如果写的程序要跨平台,最好使用这种方式。二、具体写法原创 2013-10-21 13:04:49 · 658 阅读 · 0 评论 -
<MFC>CString和<C++>标准库string的区别,及判断字符串是否为空
一、CString 和string 的区别1、string和CString均是字符串模板类,2、string为标准模板类(STL)定义的字符串类,已经纳入C++标准之中;CString(typedef CStringT> CString)为Visual C++中最常用的字符串类,继承自CSimpleStringT类,主要应用在MFC和ATL编程中,主要数据类型有char(应用于ANS原创 2013-10-21 11:05:31 · 2397 阅读 · 0 评论 -
Messagebox()的参数个数的问题.<归属类发生了变换>
在控制台和MFC中使用Messagebox()时,会出现参数要求个数不一样的问题。1、控制台工程messagebox 的3个参数和4个参数 { MessageBox("示例用法", "demo", MB_OK);}messagebox 的3个参数和4个参数 { MessageBox("示例用法", "demo", MB_OK);}为什么我不新建工程原创 2013-10-24 19:42:40 · 1212 阅读 · 0 评论 -
VC中,CAboutDlg,CDrawApp,CDrawDoc,CDrawView和CMainFrame五个类的关系是怎样的?它们各有什么作用?
CAboutDlg 向导自动生成的"关于..."对话框类.相对独立.CDrawApp: CWinApp派生类, 一般用于完成一些程序的初始化过程,类似于C中的 main(....)函数.CDrawDoc, CDrawView: CDocument和CView派生类, 处理各种文档的操作,如:打开,关闭,重载,更新等.同时和CView及其派生类结合紧密,一起完成对不同文档的处理过程.可以简单转载 2012-08-01 14:31:07 · 783 阅读 · 0 评论 -
VC中为对话框添加菜单
1、在资源编辑器中插入一个菜单,命名其ID为ID_MENU_SYS(名字可以任意指定)2、在对话框的.h文件中添加变量 CMenu m_menu;3、在对话框的.cpp文件中的OnInitDialog函数中添加一下代码: m_menu.LoadMenu(IDR_MENU_SYS); SetMenu(&m_m转载 2012-08-01 14:31:20 · 428 阅读 · 0 评论 -
vs为什么把void CMyView::OnDraw(CDC* pDC)的第2个参数注释了啊?
void CXXXView::OnDraw(CDC* /*pDC*/) 不是第二个参数被注释了,只是注释了参数名,这样的话CDC* 参数使用了缺省参数;这里用注释表示出来,一方面方便理解,另一方面也是为了防止编译时发出某某变量未使用的警告。如果函数体内要用到pDC参数的话,只要把注释去掉就可以了。转载 2012-08-01 14:32:19 · 1395 阅读 · 0 评论 -
#undef THIS_FILE的问题 .
MFC给你生成的cpp文件里面都有这么几行: 1 #ifdef _DEBUG 2 #define new DEBUG_NEW 3 #undef THIS_FILE 4 static char THIS_FILE[] = __FILE__; 5 #endif 在Visual studio 中通常只用1~3行。对于这段代码的作用,通常转载 2012-08-01 14:32:46 · 282 阅读 · 0 评论 -
VS2008如何自动添加消息映射 .
开发MFC时,开发工具VS2008不能像开发工具VC++6.0那样,直接在类文件上右击选择“Add Window Message Handles”来添加消息映射。对于我这个初学者,刚开始一直没找到可以自动添加的方法, 后来只能手动添加,熟练了之后手动添加起来倒也快,不过慢慢地我终于发现了自动添加的方法。 比如,现在需要在View类中添加WM_CREATE消息映射。(1)首先找到转载 2012-08-01 14:29:15 · 284 阅读 · 0 评论 -
OnDraw(CDC* pDC) .
OnDraw(CDC* pDC)函数对应用程序窗口的客户区进行绘图的所有代码都必须写在这个函数中TextOut(int x,int y,CString& str)函数参数x为文本显示在应用程序窗口用户区的水平位置参数y为文本显示在应用程序窗口用户区的垂直位置str为要显示的字符串,他是一个CString类的对象; pDC->TextOut(50,50,"asdads转载 2012-08-01 14:31:40 · 543 阅读 · 0 评论 -
C#获取文件名 文件路径 文件夹路径
C# 获取文件名及扩展名string aFirstName = aFile.Substring(aFile.LastIndexOf("\\") + 1, (aFile.LastIndexOf(".") - aFile.LastIndexOf("\\") - 1)); //文件名string aLastName = aFile.Substring(aFile.LastIndexOf("."转载 2014-04-28 11:13:57 · 3806 阅读 · 0 评论