2017-09-27 1 views
0
class DataStorage{ 
         // 0 1 2 3 4  5 6 7 8 
string Data[20][4]={{"Wee","50","1","First"},{"Wee","22","2","First"}, 
         // 9 10 11 12  13 14 15 16 
        {"Jason","26","3","First"},{"Krappa","12","4","First"}, 
         // 17 18 19 20  21 22 23 24 
        {" "," ","5","First"},{" "," ","6","Economy"}, 
         //25 26 27 28  29 30 31 32 
        {"Kappa","15","7","Economy"},{"Eraser","17","8","Economy"}, 
         //33 34 35 36  37 38 39 40 
        {" "," ","9","Economy"},{"Morty"," ","10","Economy"}, 
         //41 42 43 44  45 46 47 48 
        {"Rick"," ","11","Economy"},{"Amanda","10","12","Economy"}, 
         //49 50 51 52  53 54 55 56 
        {"Lee","","13","Economy"},{"MingLee"," ","14","Economy"}, 
         //57 58 59 60  61 62 63 64 
        {"Beauty"," ","15","Economy"},{"S4head"," ","16","Economy"}, 
         //65 66 67 68  69 70 71 72 
        {"Ivan"," ","17","Economy"},{"Dex"," ","18","Economy"}, 
         //73 74 75 76  77 78 79 80 
        {"Chua"," ","19","Economy"},{"Haha"," ","20","Economy"},}; 
}; 
int main(){ 

} 

arrayの値を呼び出して配列の値を変更するにはどうすればよいですか?私は入力から値を取得し、それをクラスの変数に渡して配列に設定するためにいくつかの関数を作成する必要がありますか?arrayの値を呼び出してarrayの値を変更するにはどうすればよいですか?

答えて

0

How do I call the value in array and change the value in array?と言ったら何を求めているのか分かりませんが、どのように配列要素の値を変更するかを尋ねていると思います。

配列要素を変更するには、配列の要素を変更する対象に配列のインデックスを割り当てます。しかし、C++の配列は、あなたがDataStorageのクラスのメンバとしてDataを持っているしたい場合は、たとえば0に次のコードをその要素のカウントを開始0-index arrays意味はインデックス5. Live preview

#include <iostream> 

int array[10] = {1, 5, 33, 7, -23, 2, 8, 54, 19, 2}; 

int main() { 
    std::cout << array[5] << std::endl; 

    array[5] = 100; // Set the value of the element at index 5 to 100 

    std::cout << array[5] << std::endl; 

    return 0; 
} 
0

にある要素を変更していることを覚えておいてくださいメンバー初期化リストで初期化する必要があります。 std::arrayのように、ベア配列の抽象化を使用することを強くお勧めします。これにより、at()関数で境界チェックされたアクセスを使用できます。 Dataにアクセスして内容を変更することができます。

#include <array> 
#include <iostream> 
#include <string> 

class DataStorage 
{ 
public: 
    std::array<std::array<std::string,4>,20> Data; 
    DataStorage() : Data({{ 
       {{"Wee","50","1","First"}}, 
       {{"Wee","22","2","First"}}, 
       {{"Jason","26","3","First"}}, 
       {{"Krappa","12","4","First"}}, 
       {{" "," ","5","First"}}, 
       {{" "," ","6","Economy"}}, 
       {{"Kappa","15","7","Economy"}}, 
       {{"Eraser","17","8","Economy"}}, 
       {{" "," ","9","Economy"}}, 
       {{"Morty"," ","10","Economy"}}, 
       {{"Rick"," ","11","Economy"}}, 
       {{"Amanda","10","12","Economy"}}, 
       {{"Lee","","13","Economy"}}, 
       {{"MingLee"," ","14","Economy"}}, 
       {{"Beauty"," ","15","Economy"}}, 
       {{"S4head"," ","16","Economy"}}, 
       {{"Ivan"," ","17","Economy"}}, 
       {{"Dex"," ","18","Economy"}}, 
       {{"Chua"," ","19","Economy"}}, 
       {{"Haha"," ","20","Economy"}} 
      }}) {} 
}; 

int main() 
{ 
    DataStorage d; 
    std::cout << d.Data.at(10).at(2) << '\n'; // prints 11 
    d.Data.at(10).at(2) = "1729"; 
    std::cout << d.Data.at(10).at(2) << '\n'; // prints 1729 
} 
関連する問題