본문 바로가기

C++/C++ 기초 문법12

[C++] 변수 variable, format(식별자가 정의되지 않습니다.) 📙 어트리뷰트 -> 어트리뷰트는 소스 코드에 벤더에서 제공하는 정보나 옵션을 추가하는 메커니즘이다. ◾ [[nodiscard]] -> 함수가 호출될 때 리턴값에 아무런 작업을 하지 않으면 경고 메세지를 출력한다. -> 이 기능은 에러 코드를 리턴하는 함수 등에 활용할 수 있다. -> C++ 20 부터는 이유를 설명하는 스트링을 추가할 수 있다. ◾ [[myabe_unused]] -> 뭔가 사용하지 않았을 때 컴파일러가 경고 메세지를 출력하지 않도록 설정하는 데 사용한다. ◾ [[noreturn]] ->호출 지점으로 다시 돌아가지 않는다. ◾ [[deprecated]] ->지원 중단된 대상임을 지정하는 데 사용한다. ◾ [[likely]], [[unlikely]] -> 컴파일러가 최적화 작업을 수행하는 데.. 2023. 12. 26.
[C++] 함수 📙 함수 -> 함수는 프로그램의 가독성을 높이기 위해 사용한다. #include #include using namespace std; void testFunction(int i, char c) { cout 2023. 12. 26.
[C++] 3방향 비교 연산자 1. 3방향 비교 연산자 -> 3방향 비교 연산자는 두 값으 순서를 결정하는 데 사용한다. -> 연산자 기호는 로 우주선처럼 생겼다고해서 우주선 연산자라고도 부른다 ◾ 피연산자가 정수 타입이면 강한 순서라고 부른다. strong_ordering::less = 첫 번째 피연산자가 두 번째 피연산자보다 작을 때 strong_ordering::greater = 첫 번째 피연산자가 두 번째 피연산자보다 클 때 strong_ordering::equal = 두 피연산자가 같을 때 ◾ 부동소수점 타입이라면 부분 순서라고 부른다. partial_ordering::less = 첫 번째 피연산자가 두 번째 피연산자보다 작을 때 partial_ordering::greater = 첫 번째 피연산자가 두 번째 피연산자보다 클 .. 2023. 12. 26.
[C++] 조건 연산자(?:) -> 삼항 연산자 1. 조건 연산자 -> 조건 연산자(?:)는 C++ 에서 인수 세 개를 받는 유일한 삼항 연산자이다. -> [조건] ? [동작 1] : [동작 2] = 조건을 만족하면 [동작1] 실행 아니면 [동작]2 실행한다. int main() { int i = 2; cout 3 ? "크다" : "작다"); return 0; } 2023. 12. 26.
[C++] 조건문 if , switch 문 1. 조건문 -> 조건문을 사용하면 어떤 값이 참 또는 거짓인지에 따라 주어진 코드를 실행한다. -> C++ 에서 주요 조건문은 if/else , switch 문이 있다. ◾ 📗 if 문 i = 0; // 변수 선언 int main() { if (i > 4) { // 뭔가 작업한다. } else if (i > 2) { // if 가 아닐 경우 실행 } else { // if, else if 가 아닐 경우 실행 } return 0; } -> 이런식으로 작동한다. ◾ 📙 switch 문 -> switch 문에 지정할 수 있는 표현식은 결괏값이 반드시 정수 타입이거나, 정수 타입으로 변환할 수 있는 타입이거나, 열거타입, 강타입이어야 한다. 또한 상수와 비교할 수 있어야 한다. -> 표현식의 만족 여부가 아닌.. 2023. 12. 23.
[C++] 구조체 1. 구조체 -> 구조체는 기존에 정의된 타입을 한 개 이상 묶어서 새로운 타입으로 정의할 수 있다. -> 구조체의 대표적인 예로 데이터베이스 레코드가 있다. -> 구조체 사용하려면 선언을 해야한다. (struct) ◾ main.cpp #include #include using namespace std; struct Student // 구조체 선언 { int num; // int 에 저장 double grade; // double 에 저장 }; int main() { Student s1; // Student >> s1 에 집어넣기 s1.num = 211; // s1 의 num 멤버에 211 저장 s1.grade = 2.7; // s1 의 grade 멤버에 2.7 저장 cout 2023. 12. 23.
[C++] 열거 타입 📙 열거 타입 무언가를 제한하고 싶다면 enum 타입을 사용한다. enum class numBer {King, Queen, Rook, Pawn }; numBer a{ numBer::Rook }; -> enum 타읍을 구성하는 멤버는 내부적을 정숫값으로 표현된다. {0, 1, 2, 3} ◾ 멤버마다 할당되는 값을 별도로 지정 할 수도 있다. enum class PieceType { king= 1, Queen, Rook = 10, Pawn, }; PieceType piece{ PieceType::king }; PieceType piece1{ PieceType::Queen }; PieceType piece2{ PieceType::Rook }; PieceType piece3{ PieceType::Pawn }; .. 2023. 12. 22.
[C++] 인라인(inline) 함수 1. 인라인(inline) 함수 ◾ 프로그램 코드라인 안으로 들어가 버린 함수를 뜻한다. ✳ C 언어 방법 #include #define SQUARE(x) ((x)*(x)) using namespace std; int main() { cout 2023. 12. 22.
[C++] 매개변수의 디폴트 값 1. 매개변수의 디폴트 값 ◾ C++ 은 함수에서 디폴트 값이라는 것을 설정할 수 있다. ◾ 디폴트 값 : 기본적으로 설정되어 있는 값이라고 한다. #include using namespace std; int Func1(int num = 11) { return num + 1; } int Func2(int num1 = 3, int num2 = 10) { return num1 + num2; } int main() { Func1(); Func2(); return 0; } ◾ 디폴트 값을 설정해놨기 때문에 자동으로 값이 들어가서 반환된다. #include using namespace std; int Func(int num1 = 3, int num2 = 10) { return num1 + num2; } int m.. 2023. 12. 21.