我想调用另一个类里的函数应该怎么做? 急急 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 cannot access protected member declared in class 'a'什么意思啊,怎么这个类是受保护的。 1、封装一个公共类如CYourPublicclass CYourPublic {public: CYourPublic(); virtual ~CYourPublic();public: //必须声明为静态的 static void readmemo(); static int n_EventAmount; //变量n_EventAmount}全局静态变量需在.cpp初始化int CYourPublic::n_EventAmount;//初始化全局变量在调用它们的地方包含YourPublic.h调用成员函数的地方CYourPublic::readmemo()就可以了调用成员变量的地方CYourPublic::n_EventAmount就可以啦2、例如:CStat调用CStatData的成员函数或成员变量 在StatData.h中对象实例化 CStat *pSta;//实例化 在生成CstatData窗体时把this指针传递过去 CStatData SD; SD.pSta = this;//传递this指针 SD.DoModal(); 在Stat.cpp中加入#include"StatData.h" 在需要调用CStatData的函数或变量的地方 通过指针调用 例如 PSta->yourfunction();//yourfunction()是CStatData中的函数 若还有报错,尝试加上一句 class CStatData; 补充3、可以使用外部函数或变量直接在stdafx中定义stdafx.h中声明extern int n_EventAmount; //变量n_EventAmount extern void readmemo(); 在stdafx.cpp中定义int n_EventAmount;void readmemo(); 在其他类中调用全局函数::readmemo(); 全局变量直接使用 类中私有、保护成员函数是不能被调用的,将其修改成public的、 你要实现的功能 是不是在分割窗口实现的啊,如果是的话,要先获取主框架的指针,不能直接单纯的调用类的成员函数我之前也遇到类似的问题,根本不是protected member的问题,而是调用成员函数方法的问题 定义一个类对象啊,然后那个函数是public的就可以用 类对象.函数名 的形式调用了 closesocket VC连接SQL2000数据库问题 vc2005中的CString 的问题 在桌面窗口中画线的问题 用SHGetFileInfo获取文件图标的问题 利用SendMessage传递字符串的问题 CALLBACK和WINAPI都被定义为_stdcall,它们有什么区别呢?什么是callback函数呢,_stdcall又是什么东西呢? 请教关于MFC集合类 为什么我每次连接SQL数据库并断开后,程序的内存都要增加4K? 第一次提问题~关于模拟用绳子连接两个运动的球体 vc自动生成的 .ncb 文件有什么用呀? VC6.0进度条的使用(万分紧急...太紧急了)
什么意思啊,怎么这个类是受保护的。
如CYourPublic
class CYourPublic
{
public:
CYourPublic();
virtual ~CYourPublic();public:
//必须声明为静态的
static void readmemo();
static int n_EventAmount; //变量n_EventAmount
}
全局静态变量需在.cpp初始化
int CYourPublic::n_EventAmount;//初始化全局变量
在调用它们的地方包含YourPublic.h
调用成员函数的地方CYourPublic::readmemo()就可以了
调用成员变量的地方CYourPublic::n_EventAmount就可以啦2、例如:CStat调用CStatData的成员函数或成员变量 在StatData.h中对象实例化
CStat *pSta;//实例化 在生成CstatData窗体时把this指针传递过去
CStatData SD;
SD.pSta = this;//传递this指针
SD.DoModal(); 在Stat.cpp中加入#include"StatData.h"
在需要调用CStatData的函数或变量的地方
通过指针调用 例如 PSta->yourfunction();//yourfunction()是CStatData中的函数
若还有报错,尝试加上一句 class CStatData;
3、可以使用外部函数或变量
直接在stdafx中定义
stdafx.h中声明
extern int n_EventAmount; //变量n_EventAmount
extern void readmemo(); 在stdafx.cpp中定义
int n_EventAmount;
void readmemo(); 在其他类中调用全局函数
::readmemo();
全局变量直接使用
类中私有、保护成员函数是不能被调用的,将其修改成public的、
我之前也遇到类似的问题,根本不是protected member的问题,而是调用成员函数方法的问题