2023/9/6 -- C++/QT

1. 출력 스트림 객체 cout

1> 이 개체는 ostream의 클래스 개체이며 기능적으로 printf 함수와 유사합니다.

2> 이 클래스 개체는 본질적으로 멤버 함수 삽입 연산자 오버로드 함수를 호출합니다.

3> 데이터를 출력할 때 형식 제어 문자(%d, %c, %s)를 사용할 필요가 없습니다. . . , 그냥 직접 출력하세요

4> 개행에는 endl을 사용한다

2. 입력 스트림 객체 cin

1> cin은 istream의 클래스 객체로 입력 작업에 사용되며 기능적으로 scanf와 유사합니다.

2> 이러한 유형의 객체를 입력할 때 형식 제어 문자를 사용할 필요가 없습니다.

3> 입력시 endl은 일반적으로 추가되지 않습니다.

3. 네임스페이스

3.1 std 네임스페이스 사용

1> 네임스페이스를 먼저 정의한 후 사용해야 합니다.

2> 시스템에서 제공하는 헤더 파일을 도입할 때 헤더 파일이 특정 이름을 제공하는 경우 항상 std라는 통합 네임스페이스에 정의해야 합니다.

3> 네임스페이스 사용방법 1: 네임스페이스에 이름을 사용할 경우 네임스페이스 이름과 범위 한정자를 직접 추가하고, 이름별로 특정 이름을 사용한다.

예: std::cout

4> 네임스페이스 활용방법 2: 네임스페이스에 미리 이름을 선언할 때 using 키워드를 사용한다. 이름은 나중에 직접 사용할 수 있으나, 네임스페이스에 미리 선언된 이름이 없어 직접 사용할 수 없다.

5> 네임스페이스 사용법 3: using 네임스페이스 네임스페이스 이름 키워드를 사용하여 네임스페이스 전체를 미리 선언하고, 선언한 후에는 네임스페이스 이름과 범위를 추가하지 않고도 네임스페이스에 있는 이름을 바로 사용할 수 있다.

3.2 네임스페이스 충돌 문제

1> 서로 다른 네임스페이스 간의 이름 충돌은 충돌하는 이름 앞에 네임스페이스 이름과 범위 한정자를 추가하여 해결해야 합니다.

2> 네임스페이스에 있는 이름이 글로벌 이름과 충돌합니다. 네임스페이스에 있는 이름을 사용하는 경우 네임스페이스 이름과 범위 한정자를 추가해야 합니다. 글로벌 이름을 사용하려면 글로벌 이름이 익명에 배치됩니다. 기본적으로 space를 사용하며, 명명된 범위 한정자를 추가하기만 하면 됩니다.

3> 네임스페이스에 있는 이름이 로컬 이름과 충돌하는 경우 로컬 이름이 먼저 사용되며, 네임스페이스에 있는 이름을 사용해야 하는 경우 네임스페이스 이름과 범위 한정자를 추가해야 합니다.

3.3 네임스페이스 사용 시 주의 사항

1> 네임스페이스를 중첩하여 네임스페이스를 정의할 수 있으며, 이름을 사용할 때 레벨별로 범위 한정자를 사용하여 가장 낮은 레벨을 찾아 사용해야 합니다.

2> 동일한 범위 내에서 동일한 이름을 가진 여러 개의 네임스페이스를 정의할 수 있으며, 동일한 이름을 가진 네임스페이스 쌍은 컴파일 시 하나로 결합되므로 정의 시 동일한 이름은 허용되지 않습니다.

4. C++의 문자열

4.1 C 스타일 문자열과 C++ 스타일 문자열 간의 변환

1> C 언어 스타일 문자열은 무조건 C++ 스타일 문자열로 변환될 수 있습니다.

2> C++ 스타일 문자열을 C 언어 스타일 문자열로 변환할 때 해당 멤버 함수 c_str() 또는 data()를 호출해야 합니다.

#include <iostream> #include<cstring> using 네임스페이스 std; int main() { char s1[20]; string s2 = "hello"; //s2 = s1; //C 언어 스타일을 C++ 스타일 문자열로 변환/ / s1 = s2; //C++ 스타일 문자열은 C 스타일 문자열로 직접 변환할 수 없습니다. //strcpy(s1, s2.c_str()); strcpy(s1, s2.data()); cout<<"s1 = " << s1<<endl; //안녕하세요 return 0; }

4.2 문자열 비교

1>C 언어 스타일 문자열 비교는 strcmp를 사용하여 완료해야 합니다.

2> C++ 스타일 문자열 비교, strcmp 함수를 사용할 필요 없이 관계 연산자를 직접 사용하면 됩니다.

4.3 C++ 스타일 문자열의 공통 기능

1> size(), length(): '\0'을 제외한 문자열의 실제 길이를 반환하는 함수입니다.

2>empty(): 문자열이 비어 있는지 확인하여 빈 문자열이면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

3>clear(): 문자열의 내용을 지웁니다.

4> at(): 문자열의 특정 위치에 있는 문자를 반환합니다.

4.4 문자열 입력과 출력

1> 문자열에 캐리지 리턴, 공백 또는 탭 키가 없으면 cin을 직접 사용하여 완성할 수 있습니다.

2> 입력에 공백이 있으면 전역 함수 getline을 사용하여 완료해야 합니다.

5. 부울 유형

1> C 언어에서는 bool 타입을 지원하지 않지만, C++에서는 bool 타입을 지원합니다.

2> bool 타입에는 true(0이 아닌 숫자), false(0) 두 가지 값만 있는데, 이 두 키워드는 bool 타입의 true와 false에 사용됩니다.

3> Bool형 데이터는 기본적으로 참과 거짓을 숫자로 표현하는데, 이를 단어로 표현해야 한다면 boolalpha라는 키워드를 사용하여 조정해야 합니다.

변환 후에는 항상 단어가 사용되며 계속해서 숫자를 사용하려면 noboolalpha 키워드를 사용하여 조정해야 합니다.

4> bool형 변수는 1byte의 메모리를 차지하므로 기본적으로 1bit만 필요하지만 기본 메모리 할당 단위는 byte이다.

Supongo que te gusta

Origin blog.csdn.net/weixin_54147737/article/details/132721211
Recomendado
Clasificación