メインに新しいコマンド ライン オプション パーサーを導入します。
void parseArguments(int& argc, const char**& argv) {
try {
cxxopts::Options options("MarkerTracking", "Tracks markers by ID");
options.add_options("Application")
("z,systems", "Cameras system, use 0 or 1", cxxopts::value<int>()) ;
cxxopts::ParseResult result = options.parse(argc, argv);
setUpOutputInfo();
if (result.count("z")) {
systemen = result["systems"].as<int>();
if (systemen != 0 && systemen != 1) {
outputFormatter->toggleWritePause(OUTPUT_RESUME);
outputFormatter->errorMessage("Invalid input");
outputFormatter->errorMessage("--systemen must be 0 or 1, but received " + to_string(systemen) , true);
}
}
この新しい変数 (systemen) を別の cpp ファイルのベクトルのインデックスとして使用する必要があります。
std::vector<int> v = { 7, 3, 6, 2, 6 };
std::cout << "Element present at index " << v[1+systemen*2];
どんな助けにも感謝します!