Я новичок в C++ (у меня есть опыт работы с C) и не могу понять эту функцию.
Моя проблема в том, в частности, с линией:
std::tuple<std::string,std::string> tmp(protein[i], protein[i+order]) ;
Не могу понять функцию (C++)
Может кто-нибудь объяснить мне это?
std::vector< std::tuple< std::string,std::string > > domPairSet(std::vector<std::string> protein, int order) {
/*
Create a set of domain pair of a specified order from a protein
\param protein1
\param order
\return pairsOfDom
*/
std::vector< std::tuple< std::string,std::string > > pairsOfDom ;
int cnt;
for (unsigned int i = 0 ; i < protein.size() - order ; i ++) {
std::tuple<std::string,std::string> tmp(protein[i], protein[i+order]) ;
cnt = std::count(pairsOfDom.begin(), pairsOfDom.end(), tmp) ;
if (cnt == 0)
pairsOfDom.push_back(tmp);
}
return pairsOfDom ;
}
Он создает и инициализирует переменную с именем 'tmp'. Тип: 'std :: tuple', который в простых словах означает «пара строк». –
Вы хотите прочитать на C++ - возможно, возьмите учебник онлайн-программирования или два - прежде чем пытаться понять код в нем. Это не язык, который можно проанализировать без особых инструкций. –
Название вопроса и тег биоинформатики не имеют отношения к вопросу. (Как «Шерлок Холмс» не имеет никакого отношения к цели полной остановки в конце предложения в романе таинственного романа, который вы читаете.) Пожалуйста, отредактируйте свой вопрос, чтобы спросить о том, что это действительно вас озадачивает , Я бы предположил, что это связано с [tuple] (http://en.cppreference.com/w/cpp/utility/tuple), но я не могу читать ваши мысли, чтобы точно сказать. –