У меня есть этот код в Python:Преобразование понимания списка Python в C++?
def f(x,n): return [u(k) for k in range(1,n) if u(k) > 0]
Но я понятия не имею, как перевести его в C++. Ну, я мог бы это сделать, но я не уверен, как вернуть массив в хорошем смысле, и если я должен использовать массив или вектор. Кроме того, я хотел знать, насколько это возможно. Конечно, я предполагаю, что функция u
определена для всех k > 0
.
Вы всегда должны использовать вектор. Вы просто возвращаете его, нет хорошего способа или плохого способа сделать это. Что касается того, чтобы делать вещи в компактном стиле, вы должны попробовать сами. –
x никогда не используется в теле функции. И k происходит из ниоткуда ... Является ли x и k той же переменной? – Jurlie
@Jurlie: 'k' исходит из' range (1, n) ', но вы правы в том, что' x' не используется. – martineau