簡體   English   中英

在 C++ 中將數組設置為函數的可修改參數

[英]Setting an array as a modifiiable parameter of a function in C++

我試圖將一個數組設置為一個自制函數的輸入參數,我想在其中修改數組的值。 為此,我嘗試將函數定義中的輸入數組設置為指針,但給我帶來了一些麻煩。

*.hpp 文件的部分可以在這里看到:

void CrossWall(int, int, bool[]);

*.cpp 文件的部分是下一個:

void NODE::CrossWall(int robot_x, int robot_y, bool done_checking[]){

    if (((robot_x+1) > (current_map.CheckLength() - 1)) && !done_checking[3] ){
        available_movements[3] = 0;
        done_checking[3] = true;
    }
    if (((robot_x-1) < 0 ) && !done_checking[2]){
        available_movements[2] = 0;
        done_checking[2] = true;
    }
    if (((robot_y+1) > (current_map.CheckHeight() - 1)) && !done_checking[0]){
        available_movements[0] = 0;
        done_checking[0] = true;
    }
    if (((robot_y-1) < 0 ) && !done_checking[1]){
        available_movements[1] = 0;
        done_checking[1] = true;
    }
}

我要修改的數組是 bool 數組(那里唯一的一個)。

我想我發現了一個困惑點:

不會這樣做,因為它不是指針。

事實上,它一個指針: 什么是數組到指針衰減?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM