안녕하세요

프로그램 과정에서 막혔던 문제들에 대한 해결책 정리


페이지 목록

2013년 5월 31일 금요일

[C언어] vector

벡터를 사용하는 이유벡터는 배열과 비슷합니다. 그렇기 때문에 프로그래밍을 한지 얼마 안된 사람들은
벡터를 잘 사용하지 않고, 거의 배열을 사용합니다.

벡터와 배열의 공통점은
- 값이나 요소의 나열을 가질 수 있습니다.
- 그 값을 연속된 메모리에 보관합니다.

그러나 벡터는 배열보다 좀 더 많은 이점이 있습니다.
- 벡터는 값의 추가나 삭제가 배열보다 자유롭습니다.
- 벡터가 가지는 값들의 개수를 알 수 있습니다.
- 벡터가 가져야할 요소의 개수를 선언할 필요가 없습니다.

위의 이점이 가지는 강력함을 프로그래밍을 조금만 해보신 분이라면 충분히 아실 겁니다.


벡터의 정의벡터는 vector 라는 파일안에 정의되어 있습니다.
그렇기 때문에 사용하기 위해서는 vector 헤더를 선언해 주어야 합니다.

벡터의 문법으로는

vector<type> variables;
vector<type> variabels(size);
vector<type> variables(size, initialize elements);
vector<type> variables(vector);

이 있습니다.

벡터의 멤버 함수


저작자 표시

'IT > [C++]' 카테고리의 다른 글

[C++] Friend  (0) 2012/02/20
[C++] Vector  (0) 2012/02/10
[C++] Formatting Output  (0) 2012/01/27

2013년 5월 30일 목요일

[MFC] FindString

FindString의 첫 요소는 index값 두번째는 찾고자하는 검색어이다.

이때, index 를 -1 로 두면 처음 부터 검색하고
0이면 두번째 부터 검색한다.

findstring의 경우, 0으로 입력하여 두번째 부터 검색하더라도
문서의 끝에서 멈추는 것이 아니라
첫번째 값을 검색하지 않았기에 끝까지 검색한후 돌아와서
첫번째 문자 검색 후 종료한다.

즉, 3 을 입력하면 4번째 부터 검색해서, 돌아와서 3번째 값까지 검색한 후
종료 하게 된다.

그리고, FindString의 값을 못찾을 시 반환 값은 -1 이다.

0이 아님으로 주의해서 사용이 필요하다.

2013년 5월 7일 화요일

[MFC] ListCtrl 함수

GetItemCount row 개수를 가져온다.

BOOL DeleteItem(
   int nItem
);
해당 row를 삭제한다.

DeleteAllItems (전체 Row 삭제)

GetItemText - 해당 Row, Col의 Text 가져오는 코드

int GetItemText(
   int nItem,
   int nSubItem,
   LPTSTR lpszText,
   int nLen
) const;
CString GetItemText(
   int nItem,
   int nSubItem
) const;

Parameters

nItem
The index of the item whose text is to be retrieved.
nSubItem
Specifies the subitem whose text is to be retrieved.
lpszText
Pointer to a string that is to receive the item text.
nLen
Length of the buffer pointed to by lpszText.
The version returning int returns the length of the retrieved string.
The version returning a CString returns the item text.

[MFC] ComboBox 속성

DropDown = 키보드 입력 가능
DropList     = 키보드 입력 불가

2013년 5월 6일 월요일

[MFC] Vector

Temp.clear(); 삭제

Temp.push_back(cp_temp) 추가

Temp.pop_back() 마지막열 삭제
//For 문
vector<CString>::iterator start;
vector<CString>::iterator end;

start =Temp.begin();
end = Temp.end();

for(; start < end ; start++)
{
}



참조: http://blog.naver.com/k8154?Redirect=Log&logNo=80124087592

참조: http://www.cplusplus.com/reference/vector/vector/erase/