안녕하세요, 프로그래밍 초보인데요.
std::vector[double]& var1 이것을
std::vector[float]& var1 이걸로 어떻게 바꿀 수 있나요?
double에서 float로 축소시키는 건데요, 물론 용량이 줄어드는 부분은 뒷부분 데이터를 날리면 됩니다.
std::vector[float]& var2(var1) 이런 걸로 해도 안 되고 이것 때문에 고생하고 있네요.
좀 알려주세요.
그리고 이런 거 질문하기 좋은 데 어디 있을까요?
가입 안 해도 되는 곳이면 좋겠는데요.
< > 입력이 안 돼서 [ ]로 입력했어요
std::vector<double> foo = { 1.0, 2.0, 3.0, ... }; std::vector<float> bar{ foo.begin(), foo.end() }; 이런 식으로 하면 되려나?
복사 말고는 방법 없을 듯.
Assign - dc App
답변 감사합니다. 근데 double인 foo.end()까지 float로 복사해도 자동으로 용량 넘어가는 부분은 잘라주는 건가요?
Assign은 어떻게 하라는 건가요?
assign 찾아봤는데, 내부 자료 사이즈 모르거나 사이즈 상관없이 구현하는 것도 가능한 건가요?
vector<double>& var1; vector<float>& var2; ... (var1에 값 입력 됨) ... var2.assign(var1.first, var1.end);
이렇게 하면 될까요?
아 제가 헷갈려서 이상한 소리를 하고 있네요. 다시 볼게요.
처음 알려주신 방법으로 성공했어요. 제가 잘 몰라서 그럴 수 있는데 assign은 어차피 초기값을 넣어줘야 하는 거 같아서 잘 모르겠네요.