在一个cpp里调取另一个cpp里一个函数内的数组,请教如何做呢
在一个cpp里调取另一个cpp里一个函数内的数组,请问怎么做呢?
在A.cpp有以下代码
vector<CString>wave;
LRESULT CA::OnReceiveChar(UINT ch, LONG port)
{
UpdateData(TRUE);
number++;
if (number==4)
readbackh=ch;
if (number==5)
readbackl=ch;
if (number==7)
{
switch(readbacksel)
{
case Runspeflag:
m_Erunspe=EditOutput100(readbackh,readbackl);number=0;
wave.push_back(m_Erunspe);
break;
在B.CPP里,需要用到wave, 就是把wave里的数放到SampleDatas里,
SampleDatas[i]=wave[i];
请教各位技术高手,这个应该怎么实现呢?
------解决思路----------------------
在B代码里面加上 extern vector<CString>wave;
这样编译器就知道这个变量是在其它的cpp定义的了,不会再分配内存给它,而是在link时到其它的文件模块查找。
------解决思路----------------------
在B.cpp里写上 extern vector<CString>wave; 将wave的引用范围扩展到B.cpp就行了
------解决思路----------------------
vector 和 Cstring的头文件和命名空间引入了没有?
在A.cpp有以下代码
vector<CString>wave;
LRESULT CA::OnReceiveChar(UINT ch, LONG port)
{
UpdateData(TRUE);
number++;
if (number==4)
readbackh=ch;
if (number==5)
readbackl=ch;
if (number==7)
{
switch(readbacksel)
{
case Runspeflag:
m_Erunspe=EditOutput100(readbackh,readbackl);number=0;
wave.push_back(m_Erunspe);
break;
在B.CPP里,需要用到wave, 就是把wave里的数放到SampleDatas里,
SampleDatas[i]=wave[i];
请教各位技术高手,这个应该怎么实现呢?
------解决思路----------------------
在B代码里面加上 extern vector<CString>wave;
这样编译器就知道这个变量是在其它的cpp定义的了,不会再分配内存给它,而是在link时到其它的文件模块查找。
------解决思路----------------------
在B.cpp里写上 extern vector<CString>wave; 将wave的引用范围扩展到B.cpp就行了
------解决思路----------------------
vector 和 Cstring的头文件和命名空间引入了没有?