程序错误-MFC程序编译出现下面的错误

问题描述

MFC程序编译出现下面的错误

'fsimp' : cannot convert parameter 4 from 'double (double)' to 'double (__cdecl *)(double)'

这个是求积分的 函数
double CDIALOG1::fsimp(double a,double b,double eps,double (*P)(double))
{
int n,k;
double h,t1,t2,s1,s2,ep,p,x;
n=1; h=b-a;
t1=h*(P(a)+P(b))/2.0;
s1=t1;
ep=eps+1.0;
while (ep>=eps)
{
p=0.0;
for (k=0;k<=n-1;k++)
{
x=a+(k+0.5)*h;
p=p+P(x);
}
t2=(t1+h*p)/2.0;
s2=(4.0*t2-t1)/3.0;
ep=fabs(s2-s1);
t1=t2; s1=s2; n=n+n; h=h/2.0;
}
return(s2);

}

我调用他的时候
double a,b,c,eps;
a=(3/11);
b=(10.3/11);
c=(22/11);
eps=0.0000001;

    m_e1=fsimp(a,b,eps,fun_1);

    fun_1函数
    double CDIALOG1::fun_1(double x)

{
return(m_sf1*pow(x,3)*2.04/6.7*pow(11*x/6.7,1.04)*pow(2.718,-pow(11*x/6.7,2.04)));

}

出现上面这个错误是怎么回事啊

解决方案

fun_1函数要定义成类的静态成员函数。

解决方案二:

非静态成员要与特定对象相对。别告诉我你是C++新手!!!

时间: 2024-11-30 03:56:42

程序错误-MFC程序编译出现下面的错误的相关文章

c程序问题 函数调用-冒泡排序c程序,vc6.0编译提示有一个错误一个警告,但不知为什么错,也不知怎么改

问题描述 冒泡排序c程序,vc6.0编译提示有一个错误一个警告,但不知为什么错,也不知怎么改 程序如下: #include #define TRUE 1 #define FALSE 0 void main() { int i; int a[10]; printf("please input 10 numbers:n"); for(i=0;i { scanf("%d",a[i]); } bubble(a[10],10); for(i=0;i printf("

mfc程序卡死-MFC程序卡死,打开其它东西弹出错误的对话框,显示配额不足,无法处理此命令

问题描述 MFC程序卡死,打开其它东西弹出错误的对话框,显示配额不足,无法处理此命令 开发了一个MFC程序,程序中启用了2个线程,用到4个串口,刚开始执行一两次么问题,可是过了一会儿就有一个线程卡死了...代码中用到new的,都delete了,不知道是什么原因,还请各位大神帮忙解决,很急!!! 解决方案 线程卡死,是不是资源消耗太多,除了内存,是否还有其他资源泄露

新手求助!!!vc6.0 MFC程序编译通过却运行不了,F5输出错误一大堆!!求大神

问题描述 新手求助!!!vc6.0 MFC程序编译通过却运行不了,F5输出错误一大堆!!求大神 Loaded 'ntdll.dll', no matching symbolic information found. Loaded 'C:WindowsSysWOW64kernel32.dll', no matching symbolic information found. Loaded 'C:WindowsSysWOW64KernelBase.dll', no matching symbolic

mfc-WIN7上编译好的RELEASE MFC程序拿到WINXP系统上不能运行,求帮忙?

问题描述 WIN7上编译好的RELEASE MFC程序拿到WINXP系统上不能运行,求帮忙? 双击exe,会出现以上的错误,刚开始说缺少msvcr100.dll,我拷贝进去之后就出现以上的情况,于是调试,堆栈信息如下: 但是在我电脑上单步调试时直接从CWnd::CreateEx中的CreateWindowEx运行过去了,没有源代码,该函数在USER32.DLL中,这种情况怎么判断问题所在呢? 解决方案 与是否是 Win7 关系不大,主要是你的 WinXP 系统是不是没有安装开发环境?而你的运行,

Lua 笔记--编译、执行、错误与协同程序

        一般dofile 可以这样来定义: function dofile(filename)     local f = assert(loadfile(filename))     return f() end 注意,如果loadfile 失败,那么其中assert 就会引发一个错误.         函数loadstring 与loadfile 类似,不同之处在于它是从一个字符串中读取代码,而非从文件读取.例如,如下代码: f = loadstring("i = i + 1&quo

源代码-寻求帮助!C++程序,无法通过编译,我没检查出错误,求高手相助!

问题描述 寻求帮助!C++程序,无法通过编译,我没检查出错误,求高手相助! C++ primer plus 6th edition 课后编程联系,p163页,第一题. 题目要求输入两个整数,并输出这两个整数之间所有整数值的和. #include int main() { using namespace std; cout << "PLEASE ENTER 2 NUMBERS: "; //声明两个整数变量,用来保存输入的值 int number1, number2; //wh

程序问题:能编译但是看不懂这个语法错误

问题描述 程序问题:能编译但是看不懂这个语法错误 #include #include int main(void) { int max(int x,int y); int a, b, c; scanf_s("%d,%d", &a, &b); c=max(a,b); printf("max=%dn", c); return 0; system("PAUSE"); } int max(int x, int y) { int z; if

visual studio 2010-VS2010的MFC程序编译Release版本出现如下问题,请问应该怎么解决呢?

问题描述 VS2010的MFC程序编译Release版本出现如下问题,请问应该怎么解决呢? 1>DlgTotalProtein.obj : error LNK2005: "protected: static struct CRuntimeClass * __stdcall CDlgTotalProtein::_GetBaseClass(void)" (?_GetBaseClass@CDlgTotalProtein@@KGPAUCRuntimeClass@@XZ) 已经在 DlgT

容器“Collection的一个小程序编译时出现的错误,请帮忙解决一下

问题描述 容器"Collection的一个小程序编译时出现的错误,请帮忙解决一下"容器"Collection的一个小程序在windowsXp下的JDK1.5版本/*Collection方法*/importjava.util.*;publicclassTestCollection{publicstaticvoidmain(String[]args){Collectionc=newArrayList();c.add("hello");c.add(newName