avoid excess string copy in auto loops

This commit is contained in:
Axel Kohlmeyer
2022-09-01 16:02:32 -04:00
parent 34677f78c2
commit 1caf074ba1
8 changed files with 11 additions and 11 deletions

View File

@ -231,7 +231,7 @@ void DumpCustomADIOS::init_style()
delete[] columns;
std::string combined;
int icol = 0;
for (auto item : utils::split_words(columns_default)) {
for (const auto &item : utils::split_words(columns_default)) {
if (combined.size()) combined += " ";
if (keyword_user[icol].size())
combined += keyword_user[icol];

View File

@ -238,7 +238,7 @@ void DumpAtomMPIIO::init_style()
int icol = 0;
columns.clear();
for (auto item : utils::split_words(default_columns)) {
for (const auto &item : utils::split_words(default_columns)) {
if (columns.size()) columns += " ";
if (keyword_user[icol].size())
columns += keyword_user[icol];

View File

@ -209,7 +209,7 @@ void DumpCustomMPIIO::init_style()
delete[] columns;
std::string combined;
int icol = 0;
for (auto item : utils::split_words(columns_default)) {
for (const auto &item : utils::split_words(columns_default)) {
if (combined.size()) combined += " ";
if (keyword_user[icol].size())
combined += keyword_user[icol];

View File

@ -448,7 +448,7 @@ int plugin_get_num_plugins()
int plugin_find(const char *style, const char *name)
{
int i = 0;
for (auto entry : pluginlist) {
for (const auto &entry : pluginlist) {
if ((strcmp(style, entry.style) == 0) && (strcmp(name, entry.name) == 0)) return i;
++i;
}

View File

@ -1133,7 +1133,7 @@ void Dump::modify_params(int narg, char **arg)
} else if (strcmp(arg[iarg],"colname") == 0) {
if (iarg+2 > narg) error->all(FLERR,"Illegal dump_modify command");
if (strcmp(arg[iarg+1],"default") == 0) {
for (auto item : keyword_user) item.clear();
for (auto &item : keyword_user) item.clear();
iarg += 2;
} else {
if (iarg+3 > narg) error->all(FLERR,"Illegal dump_modify command");

View File

@ -161,7 +161,7 @@ void DumpLocal::init_style()
delete[] columns;
std::string combined;
int icol = 0;
for (auto item : utils::split_words(columns_default)) {
for (const auto &item : utils::split_words(columns_default)) {
if (combined.size()) combined += " ";
if (keyword_user[icol].size()) combined += keyword_user[icol];
else combined += item;

View File

@ -678,7 +678,7 @@ void FixAveTime::invoke_scalar(bigint ntimestep)
if (!yaml_header || overwrite) {
yaml_header = true;
fputs("keywords: ['Step', ", fp);
for (auto k : keyword) fmt::print(fp, "'{}', ", k);
for (const auto &k : keyword) fmt::print(fp, "'{}', ", k);
fputs("]\ndata:\n", fp);
}
fmt::print(fp, " - [{}, ", ntimestep);
@ -900,7 +900,7 @@ void FixAveTime::invoke_vector(bigint ntimestep)
if (!yaml_header || overwrite) {
yaml_header = true;
fputs("keywords: [", fp);
for (auto k : keyword) fmt::print(fp, "'{}', ", k);
for (const auto &k : keyword) fmt::print(fp, "'{}', ", k);
fputs("]\ndata:\n", fp);
}
fmt::print(fp, " {}:\n", ntimestep);

View File

@ -629,7 +629,7 @@ void Thermo::modify_params(int narg, char **arg)
} else if (strcmp(arg[iarg], "colname") == 0) {
if (iarg + 2 > narg) error->all(FLERR, "Illegal thermo_modify command");
if (strcmp(arg[iarg + 1], "default") == 0) {
for (auto item : keyword_user) item.clear();
for (auto &item : keyword_user) item.clear();
iarg += 2;
} else {
if (iarg + 3 > narg) error->all(FLERR, "Illegal thermo_modify command");
@ -658,7 +658,7 @@ void Thermo::modify_params(int narg, char **arg)
format_int_user.clear();
format_bigint_user.clear();
format_float_user.clear();
for (auto item : format_column_user) item.clear();
for (auto &item : format_column_user) item.clear();
iarg += 2;
continue;
}
@ -747,7 +747,7 @@ void Thermo::allocate()
int i = 0;
key2col.clear();
for (auto item : utils::split_words(line)) { key2col[item] = i++; }
for (const auto &item : utils::split_words(line)) { key2col[item] = i++; }
}
/* ----------------------------------------------------------------------