QT中两个类之间如何进行值传递?如何一个类里面定义了一个数组a[270],怎么传递给另一个类?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QT中两个类之间如何进行值传递?如何一个类里面定义了一个数组a[270],怎么传递给另一个类?相关的知识,希望对你有一定的参考价值。
你是说两个不同类的对象之间吧?第一种情况
class A
public:
int a[270];
;
class B
public:
A m;
//在class B里面可以通过m操作上面的a[270]
//第二种情况
第一种情况
class A
public:
static int a[270];
;
class B
public:
void sumfunc()
A::a[7]=190;
//在class B里面可以直接操作上面的a[270]
还有很多情况,很多方法friend啊 QT的信号槽机制啊,看你具体想实现什么东西 参考技术A 数组能按值传递么?数组的首地址就一指针,咋个值传递?
无外乎重新生成一个数组,然后把你传过来的数组的值都copy过去。
void MyClassA::copyArrayForm(MyClassB* pb,int arraySize)
//假设你数组是int型
int myArray[arraySize] = 0; //将数组所有问题初始化为0
memcpy(myArray,pb->array,sizeof(int)*arraySize);
参考技术B 指针,循环赋值
或者直接引用 参考技术C 用信号和槽机制。
直接把数组的首地址传过去就可以了。
以上是关于QT中两个类之间如何进行值传递?如何一个类里面定义了一个数组a[270],怎么传递给另一个类?的主要内容,如果未能解决你的问题,请参考以下文章
在qt的一个工程中,我想把一个cpp文件中类函数实现里面的变量的值拿到另一个cpp文件中,