trong C++ Tôi muốn khởi tạo một ma trận đôi (2 chiều đôi mảng) như tôi thường làm mà không cần con trỏ như sau:C++ đa chiều mảng khởi
double data[4][4] = {
1,0,0,0,
0,1,0,0,
0,0,1,0,
0,0,0,1
};
Tuy nhiên, kể từ khi tôi muốn quay trở lại và chuyển nó cho các hàm, tôi cần nó như một con trỏ double**
. Vì vậy, về cơ bản tôi cần phải khởi tạo dữ liệu một cách tốt đẹp (như trên), nhưng sau đó tôi cần lưu con trỏ vào mảng 2D mà không làm mất dữ liệu khi chức năng thoát.
Bất kỳ trợ giúp nào về điều này? :-)
Tại sao bạn cần nó như một 'đôi ** '? Có gì sai với 'double (*) [4]'? –
Đây là C++. Đây có phải là một lớp học, với mảng này như là một thành viên, mà đi một tham chiếu trở lại khi bạn gọi một chức năng thành viên? –
có thể trùng lặp của [Truyền mảng hai chiều qua con trỏ] (http: // stackoverflow.com/questions/3515045/passing-two-dimensional-array-via-pointer) Đó là C, không phải C++, nhưng nó chính xác là cùng một vấn đề. –