2014-02-16 2 views
2

C++의 초보자입니다. 나는 벡터에 push_back 값을 부여하는 함수를 만들고 싶다.C++에서 vector에 push_back 값을 전달하는 함수

#include <vector> 
#include <iostream> 
using namespace std; 

void pushVector (vector <int> v, int value){ 
v.push_back(value); 
} 

int main(){ 
vector <int> intVector; 
pushVector (intVector, 17); 
cout << intVector.empty(); // 1 
} 

내 기능은 벡터에 push_back 값이 없습니다. 내 실수는 어디 갔지?

+3

'벡터 & v' 작업 완료. –

+1

"값으로 전달"과 "참조로 전달"을 비교합니다. –

+0

실수로'push_back'을 처음부터 끝내려고합니다. 너 왜 그거 해? – jrok

답변

3

참조로 함수에 벡터를 전달해야합니다. 함수를 작성한 방식으로 벡터의 복사본을 본문 내부에 만들고 벡터는 함수 외부에서 변경되지 않은 상태로 유지됩니다.

#include <vector> 
#include <iostream> 
void pushVector (vector <int>& v, int value){ 
v.push_back(value); 
} 

int main(){ 
vector <int> intVector; 
pushVector (intVector, 17); 
cout << intVector.empty() // 1 
} 

here은 간결한 설명입니다.

+0

Ty for answer.이 "&"기호를 C++에서 사용하는 방법에 대한 정보는 어디에서 찾을 수 있습니까? –

+2

@OrangeFox는 언어가 발명 된 이후 문자 그대로 인쇄 된 모든 C++ 책 [ 제안 사항은이 목록을 참조하십시오] (http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list) – WhozCraig

관련 문제