我定义的函数是这么写的:
int CTest112Dlg::gotnum(int num)
{
int result;
abc[num]=5;
result=abc[num];
return result;
}
其中abc数组我已经在OnInitDialog()里面定义并且赋值了,如下:
for (int i=0;i<5;i++)
{
abc[i]=0;
}
int kk;
kk=gotnum[3];
得到错误:
E:\Program Files\Microsoft Visual Studio\MyProjects\test112\test112Dlg.cpp(125) : error C2109: subscript requires array or pointer type
E:\Program Files\Microsoft Visual Studio\MyProjects\test112\test112Dlg.cpp(125) : error C2440: 'initializing' : cannot convert from 'int (__thiscall CTest112Dlg::*)(int)' to 'int'
Conversion is a valid standard conversion, which can be performed implicitly or by use of static_cast, C-style cast or function-style cast
Error executing cl.exe.
请问如何解决啊?谢谢了.
int CTest112Dlg::gotnum(int num)
{
int result;
abc[num]=5;
result=abc[num];
return result;
}
其中abc数组我已经在OnInitDialog()里面定义并且赋值了,如下:
for (int i=0;i<5;i++)
{
abc[i]=0;
}
int kk;
kk=gotnum[3];
得到错误:
E:\Program Files\Microsoft Visual Studio\MyProjects\test112\test112Dlg.cpp(125) : error C2109: subscript requires array or pointer type
E:\Program Files\Microsoft Visual Studio\MyProjects\test112\test112Dlg.cpp(125) : error C2440: 'initializing' : cannot convert from 'int (__thiscall CTest112Dlg::*)(int)' to 'int'
Conversion is a valid standard conversion, which can be performed implicitly or by use of static_cast, C-style cast or function-style cast
Error executing cl.exe.
请问如何解决啊?谢谢了.
应该将 abc 定义为 CTest112Dlg 的成员才行,这样abc 在两个成员函数中才能同时访问阿。
从class view处右键点击CTest112Dlg,选择菜单中的 添加成员变量 一项
输入
int
abc[5]
然后在OnInitDialog中加入你的复值代码