回 帖 发 新 帖 刷新版面

主题:如何在MFC中自定义一个类

我刚刚学习VC不久,有个问题想请大家帮帮忙!问题如下:
    在MFC中,我如果不用那个new class新建一个类,而是自己写这个类的.h和.cpp文件,这样应该也是可以的吧!我在网上查了一些资料,都说.h里面是类的声明,.cpp里是具体的定义,于是我的理解是这样的,比如我要建一个类A,如下:
//A.h

class A
{
  public:
      int a;
  public:
      int add(int x,int y);
}

//A.cpp
#include<A.h>
int A::add(int x,int y)
{
  int z;
  z=x+y;
  return z;
}

这样对吗?但是我看了别人定义的类的头文件.h里面顶部有好多如下面这样的代码:
#if !defined(AFX_MYSTATIC_H__471BBFBD_5A1B_49BC_A8FC_F15D315DC679__INCLUDED_)
#define AFX_MYSTATIC_H__471BBFBD_5A1B_49BC_A8FC_F15D315DC679__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// MyStatic.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// CMyStatic window
#include "StdAfx.h"
#include "BaseClassDef.h"
这些代码是什么意思啊,我看不懂,难道.h文件中一定要有这些吗?
请高手们多多指教!!

回复列表 (共5个回复)

沙发

菜单-->插入-->类

设定类名后,在自动生成的代码里面添加自己的代码

板凳

我也刚刚开始学VC
不过我看你是只是要运行C++程序吧?C++我倒是学了一段时间了,我觉得你写的两个代码应该是对的,只是要运行的话要新建工程。
那些乱七八糟的东西看不懂就算了,我也一点都不懂,不过我觉得现在暂时对我还没有什么影响。

3 楼

这个问题我以前也接触过,开始的时候我也找不到问题的原因,后来我进了一个技术交

流群,这个群里的人挺多的,在里面可以沟通技术,你可以进去看一下.群号是:六@二@

八@七@八@零@四@三。另外,这个群里可以接项目。

4 楼

同意一楼的,插入类后,双击类名,就进入了头文件,双击类的函数就进入了源文件即.cpp文件

5 楼

#if !defined(AFX_MYSTATIC_H__471BBFBD_5A1B_49BC_A8FC_F15D315DC679__INCLUDED_)
#define AFX_MYSTATIC_H__471BBFBD_5A1B_49BC_A8FC_F15D315DC679__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// MyStatic.h : header file
//

这些是在头文件中防止重复运行,你还可以这样编写:
#ifndef _A_H_
#define _A_H_


#include "StdAfx.h"
这个是在.cpp中添加的,在工程文件中它集成了大部分的系统调用的头文件,这里的相关帖子都有说明的!

我来回复

您尚未登录,请登录后再回复。点此登录或注册