24

Javaで私ができること

List<String> data = new ArrayList<String>();
data.add("my name");

C ++で同じことを行うにはどうすればよいですか?

4

2 に答える 2

56

とを使用std::vectorstd::stringます。

#include <vector>  //for std::vector
#include <string>  //for std::string

std::vector<std::string> data;
data.push_back("my name");

newC++ では、オブジェクトを作成するたびに使用する必要がないことに注意してください。オブジェクトdataは、 のデフォルト コンストラクタを呼び出すことによってデフォルトで初期化されますstd::vector。したがって、上記のコードは問題ありません。

C++ のモットーは次のとおりですnew

コンパイル時にすでにサイズが分かっていて、配列を大きくする必要がない場合は、次を使用できますstd::array

#include <array> //for std::array

std::array<std::string, N> data; //N is compile-time constant
data[i] = "my name"; //for i >=0 and i < N

詳細については、ドキュメントを参照してください。


C++ 標準ライブラリには多くのコンテナーがあります。状況に応じて、目的に最も適したものを選択する必要があります。それぞれについてお話しすることはできません。しかし、これは非常に役立つチャートです(source):

ここに画像の説明を入力

于 2013-01-20T16:05:11.987 に答える
0

すべてが 1 行のベクトルに結合されます myVec(1,"hello");

于 2013-01-20T16:45:16.593 に答える