这个问题属于非常初级的问题,但是对于初学不知道的人可能会比较头疼。C++中函数是不能直接返回一个数组的,但是数组其实是指针,所以可以让函数返回指针来实现。比如一个矩阵相乘的函数,很容易地我们写成:
1 #include <iostream>
2
3 using namespace std;
4
5 void MultMatrix(float M[4], float A[4], float B[4])
6 {
7     M[0] = A[0]*B[0] + A[1]*B[2];
8     M[1] = A[0]*B[1] + A[1]*B[3];
9     M[2] = A[2]*B[0] + A[3]*B[2];
10     M[3] = A[2]*B[1] + A[3]*B[3];
11
12     cout << M[0] << " " << M[1] << endl;
13     cout << M[2] << " " << M[3] << endl;
14 }
15
16 int main()
17 {
18     float A[4] = { 1.75, 0.66, 0, 1.75 };
19     float B[4] = {1, 1, 0, 0};
20
21     float *M = new float[4];
22     MultMatrix(M, A, B);
23
24     cout << M[0] << " " << M[1] << endl;
25     cout << M[2] << " " << M[3] << endl;
26     delete[] M;
27
28     return 0;
29 }