예를 들어
이런 코드가 가능함?
auto?
런타임에 vc에 들어갈 값이 결정됨
그냥 void포인터나 아무 포인터 쓴다음 캐스팅하면됨
void* 하고 분기로 캐스팅 하는 방법 밖에 없음? 인터페이스처럼 깔끔하게는 못하나
저건 템플릿이라 안될꺼라 생각하지먼(테스트 안해봄) 만약있다해도 재대로 자기자료형 쓸려면 케스팅이 필요함
템플릿만 아니면 인터페이스로 묶는데 템플릿이라 ㅠㅠ 강한 타입 언어라 그런지 생각할게 너무 많네
원하는건 인터프리터 언어에서는 일상이겠지만 C언어같이 컴파일하는 언어의 영역이 아님
뭔 개소리야 C++ 에서도 잘만 할 수 있는데. 그리고 void* 라니 진짜 반성하자 - return 0;
지까짓게 메모리상 어드레스 알면 이리드루와지
void* 를 템플릿인자로 집어넣자
vector<void>* 해도 템플릿 인자는 상관없지 않어? void* 벡터에 &vector<type> 대입 안되는디
ㄴㄴ vector < void> 로 넣고 구조체로 타입 묶고 하나하나 동적할당하면 됨 ㅋㅋ
그건 무슨 트릭이야 혹시 설명되 사이트 같은거 있음?
밑의 std::any 좌 쓰자 ㅎㅎ;;
void* 라니 미친 새끼들인가? std::any 라고 있다 그거 쓰면 된다 - return 0;
근데 템플릿도 인터페이스로 묶이는데 뭔 소리야? - return 0;
감사합니다
호에에 인터페이스로 묶여요?
C++ 문법 공부부터 다시 해라 이 놈들아 아이고 - return 0;
stl 잘 모르고 취업하면 혼나요?
STL 을 모르면 C++ 를 무슨 양심으로 배웠다고 할 수 있을까 - return 0;
템플릿을 인터페이스로 묶는다는게 이해가 잘 안되는데 머라고 검색하면 배울 수 있을까요
아니 그냥 평소 쓰듯이 하면 돼... 스마트 포인터까지는 안 쓰더라도 인터페이스 타입의 포인터를 템플릿에 넣으면 되잖아... - return 0;
vector<Human>* = &vector<Male> 이런게 된다는 말씀인가요?
Human, Male 뒤에 별 있어요
아니 vector<Human별> 타입의 vec 에다가 vec[0] = new Male() 이게 된다고 - return 0;
넹 그건 되는데 이제 전혀 상관없는 vector<Human>과 vector<Car> 같은걸 묶어주는건 안되나요?
당연히 안되지 두 벡터가 다른 타입인데. 일일이 변환해서 넣어줘야된다 - return 0;
넹... std::any로 캐스팅 하겠습니다.
저런 테마 어떻게 함? 에디터임?
carbon.sh - return 0;
님아 vector쓴다치면 캐시미스는 어떡해요?
배열로 돌리다가 전에 stl 배우라는 말 듣고 vector썼는데 속도 나가서 다시 배열 씀...
vector도 내부적으론 연속된 메모리 공간 안에 요소들을 저장하지 않나요?
정답
그렇긴 한데 한 객체 안에 vector가 있는데 그 객체랑 vector내용이랑 번갈아가면서 건드리면서 속도가 떨어지는것 같아요...ㅇㅇ
지맘데로 공간확보했다가 내부복사하고 해서 오락가락함 퍼포먼스 요구되는곳에는 귀찮아도 배열이던 뭐던 직접 처리하는것이ㅜ좋음
어떤 구조인진 모르지만 코드 최적화로 해결되지 않을까여
3차원 배열이였는데 vector<vector<이런식으로 해서 떨어진 것 같기도 하고요..ㅇㅇ
아 퍼포먼스는 직접처리인가요 조언 감사
어음 vector<votor>>는 초큼 아닌 것 같은데
그냥쓰기 크게무리는 없지만 우리가 굳이 c++을 들고나서는것은 퍼포먼스가 아쉬울때 이니까 진지하게 만들일 있으면 직접
auto?
런타임에 vc에 들어갈 값이 결정됨
그냥 void포인터나 아무 포인터 쓴다음 캐스팅하면됨
void* 하고 분기로 캐스팅 하는 방법 밖에 없음? 인터페이스처럼 깔끔하게는 못하나
저건 템플릿이라 안될꺼라 생각하지먼(테스트 안해봄) 만약있다해도 재대로 자기자료형 쓸려면 케스팅이 필요함
템플릿만 아니면 인터페이스로 묶는데 템플릿이라 ㅠㅠ 강한 타입 언어라 그런지 생각할게 너무 많네
원하는건 인터프리터 언어에서는 일상이겠지만 C언어같이 컴파일하는 언어의 영역이 아님
뭔 개소리야 C++ 에서도 잘만 할 수 있는데. 그리고 void* 라니 진짜 반성하자 - return 0;
지까짓게 메모리상 어드레스 알면 이리드루와지
void* 를 템플릿인자로 집어넣자
vector<void>* 해도 템플릿 인자는 상관없지 않어? void* 벡터에 &vector<type> 대입 안되는디
ㄴㄴ vector < void> 로 넣고 구조체로 타입 묶고 하나하나 동적할당하면 됨 ㅋㅋ
그건 무슨 트릭이야 혹시 설명되 사이트 같은거 있음?
밑의 std::any 좌 쓰자 ㅎㅎ;;
void* 라니 미친 새끼들인가? std::any 라고 있다 그거 쓰면 된다 - return 0;
근데 템플릿도 인터페이스로 묶이는데 뭔 소리야? - return 0;
감사합니다
호에에 인터페이스로 묶여요?
C++ 문법 공부부터 다시 해라 이 놈들아 아이고 - return 0;
stl 잘 모르고 취업하면 혼나요?
STL 을 모르면 C++ 를 무슨 양심으로 배웠다고 할 수 있을까 - return 0;
템플릿을 인터페이스로 묶는다는게 이해가 잘 안되는데 머라고 검색하면 배울 수 있을까요
아니 그냥 평소 쓰듯이 하면 돼... 스마트 포인터까지는 안 쓰더라도 인터페이스 타입의 포인터를 템플릿에 넣으면 되잖아... - return 0;
vector<Human>* = &vector<Male> 이런게 된다는 말씀인가요?
Human, Male 뒤에 별 있어요
아니 vector<Human별> 타입의 vec 에다가 vec[0] = new Male() 이게 된다고 - return 0;
넹 그건 되는데 이제 전혀 상관없는 vector<Human>과 vector<Car> 같은걸 묶어주는건 안되나요?
당연히 안되지 두 벡터가 다른 타입인데. 일일이 변환해서 넣어줘야된다 - return 0;
넹... std::any로 캐스팅 하겠습니다.
저런 테마 어떻게 함? 에디터임?
carbon.sh - return 0;
님아 vector쓴다치면 캐시미스는 어떡해요?
배열로 돌리다가 전에 stl 배우라는 말 듣고 vector썼는데 속도 나가서 다시 배열 씀...
vector도 내부적으론 연속된 메모리 공간 안에 요소들을 저장하지 않나요?
정답
그렇긴 한데 한 객체 안에 vector가 있는데 그 객체랑 vector내용이랑 번갈아가면서 건드리면서 속도가 떨어지는것 같아요...ㅇㅇ
지맘데로 공간확보했다가 내부복사하고 해서 오락가락함 퍼포먼스 요구되는곳에는 귀찮아도 배열이던 뭐던 직접 처리하는것이ㅜ좋음
어떤 구조인진 모르지만 코드 최적화로 해결되지 않을까여
3차원 배열이였는데 vector<vector<이런식으로 해서 떨어진 것 같기도 하고요..ㅇㅇ
아 퍼포먼스는 직접처리인가요 조언 감사
어음 vector<votor>>는 초큼 아닌 것 같은데
그냥쓰기 크게무리는 없지만 우리가 굳이 c++을 들고나서는것은 퍼포먼스가 아쉬울때 이니까 진지하게 만들일 있으면 직접