我想添加一个类,想它直接从CObject中派生出来,我用下面的方法进行后为什么程序编译都通不过?第一步:打开"文件"菜单,选中"新建";
第二步:选中"C/C++Header File",然后在"文件"一栏中输入文件名A,点"确定";
第三步:在重复第一步后,选中"C++Source File",然后在"文件"一栏中输入文件名A,点"确定";
第四步:在添加的A.H文件中写入:
class CA:public CObject
{
public:
void show();
};第五步:在添加的A.CPP文件中写入:
#include "stdafx.h"
#include "A.H" void CA::show()
{
AfxMessageBox("FUCK!");
}第六步:在TESTView.cpp文件头中写入:#include "A.H"
第七步:在TESTView.cpp文件中的某个菜单事件处理方法中写入:
void CTESTView::OnOpen()
{
// TODO: Add your command handler code here
CA ca;
ca.show();
}
最后执行时有4个错误如下:
--------------------Configuration: TEST - Win32 Debug--------------------
Compiling resources...
Compiling...
StdAfx.cpp
Compiling...
MainFrm.cpp
TEST.cpp
TESTDoc.cpp
TESTView.cpp
D:\PROGRAM FILES\VC++\TEST\TESTView.cpp(108) : error C2065: 'CA' : undeclared identifier
D:\PROGRAM FILES\VC++\TEST\TESTView.cpp(108) : error C2146: syntax error : missing ';' before identifier 'ca'
D:\PROGRAM FILES\VC++\TEST\TESTView.cpp(108) : error C2065: 'ca' : undeclared identifier
D:\PROGRAM FILES\VC++\TEST\TESTView.cpp(109) : error C2228: left of '.show' must have class/struct/union type
A.CPP
Generating Code...
Error executing cl.exe.TEST.exe - 4 error(s), 0 warning(s)请问大家这是怎么回事啊??本来我想用类向导来添加类的,但是好象不能把CObject直接作为基类,故用这种方法.
第二步:选中"C/C++Header File",然后在"文件"一栏中输入文件名A,点"确定";
第三步:在重复第一步后,选中"C++Source File",然后在"文件"一栏中输入文件名A,点"确定";
第四步:在添加的A.H文件中写入:
class CA:public CObject
{
public:
void show();
};第五步:在添加的A.CPP文件中写入:
#include "stdafx.h"
#include "A.H" void CA::show()
{
AfxMessageBox("FUCK!");
}第六步:在TESTView.cpp文件头中写入:#include "A.H"
第七步:在TESTView.cpp文件中的某个菜单事件处理方法中写入:
void CTESTView::OnOpen()
{
// TODO: Add your command handler code here
CA ca;
ca.show();
}
最后执行时有4个错误如下:
--------------------Configuration: TEST - Win32 Debug--------------------
Compiling resources...
Compiling...
StdAfx.cpp
Compiling...
MainFrm.cpp
TEST.cpp
TESTDoc.cpp
TESTView.cpp
D:\PROGRAM FILES\VC++\TEST\TESTView.cpp(108) : error C2065: 'CA' : undeclared identifier
D:\PROGRAM FILES\VC++\TEST\TESTView.cpp(108) : error C2146: syntax error : missing ';' before identifier 'ca'
D:\PROGRAM FILES\VC++\TEST\TESTView.cpp(108) : error C2065: 'ca' : undeclared identifier
D:\PROGRAM FILES\VC++\TEST\TESTView.cpp(109) : error C2228: left of '.show' must have class/struct/union type
A.CPP
Generating Code...
Error executing cl.exe.TEST.exe - 4 error(s), 0 warning(s)请问大家这是怎么回事啊??本来我想用类向导来添加类的,但是好象不能把CObject直接作为基类,故用这种方法.
解决方案 »
- 求助关于sendto和recvfrom的几个问题
- MFC 调试进入汇编调试,无法跳出.
- ADO的问题--如何判断某个记录集中有没有记录?
- MFC中如何将客户区拆分为多个视图显示
- 已知另外一个进程窗口句柄 hwnd...怎样改掉该窗口的图标为我自己的
- 大家帮忙看看我的代码为什么传不了文件,老死掉了,??
- 用WebBrowser控件的时候出现了点问题!请各位帮手!!!
- 如何将现有的程序添加到工程中去?
- VC界面问题
- 如何在DirectX模式下捕捉屏幕?How to capture screen with DirectX ? (高分相送)
- 怎样在CListCtrl中只显示图标?
- VC的新书及资源很少,哪里比得上java的资料,能说明VC越来越没有前途了吗?
在上面添加头文件#include "A.H"
VC6.0里面没有,但是VS2003和2005有,VC6.0只能手动添加
D:\PROGRAM FILES\VC++\TEST\TESTView.cpp(108) : error C2146: syntax error : missing ';' before identifier 'ca'1: Project/Add to project/Files...<a.h and a.cpp>
2: Build/Rebuild All
里面有个add class右上方
这样在VC6里面有些基类没有,例如:CObject\CDialogBar等,你自己要手动填加,比较麻烦~~
VS2003里面就不会有这种问题了~~~
各个类是相对独立的, 虽然彼此之间存在关系,
但是类型是互相不认识的,
新增加的类也是一样 ...所以,
需要添加相应的头文件到你要是使用这个类的文件中 ......最后,请确认你的类是 CA ? or A ??