반응형 분류 전체보기188 Effective C++ 항목11 : operator에서는 자기대입에 대한 처리가 빠지지 않도록 하자 Effective C++ 항목11 operator에서는 자기대입에 대한 처리가 빠지지 않도록 하자 선 요약 operator=함수를 구현할 때, 자기대입을 제대로 처리하도록 하자. 객체간의 주소 비교 호출 순서를 적절히 조절 "복사 후 맞바꾸기" 기법 두 개 이상의 객체에 대해 동작하는 함수가 있다면, 이 함수에 넘겨지는 객체들이 사실 같은 객체인지 정확하게 체크하자. class Widget{ ... } Widget w; ... w = w // 자기에 대한 대입 위와 같이 C++에서는 자기 자신을 대입하는 자기대입이 적법(legal)하다. 자기대입은 여러 곳에서 하나의 객체를 참조하는 상태, 즉 중복참조라고도 불린다. 중복참조란? class Base { ... } class Derived { ... } v.. 2023. 2. 18. How to improve when loading speed of QML TreeView is slow (QML TreeView 로딩속도 느릴때 개선 방법) QML 트리뷰 로딩속도 느릴때 개선 방법How to improve when loading speed of QML TreeView is slow(추천) Qt QML과 C++로 시작하는 크로스플랫폼 앱 개발 강의 - 입문편https://inf.run/3XmSH Qt QML과 C++로 시작하는 크로스플랫폼 앱 개발 - 입문편 강의 - 인프런Qt QML과 C++를 사용하여 크로스플랫폼 애플리케이션 개발에 입문할 수 있습니다. 해당 강의에서는 윈도우 응용 프로그램 타겟으로 개발을 진행합니다., 강의 주제 📖 이 강의를 통해 참가자들은www.inflearn.com 문제 상황Qt에서 QML을 사용하면 TreeView 컴포넌트를 사용하곤 한다. 해결책이 때, TreeView의 delegate를 item이나 itemD.. 2023. 2. 16. Effective C++ 항목10: 대입 연산자는 *this의 참조자를 반환하게 하자 Effective C++ 항목10 대입 연산자는 *this의 참조자를 반환하게 하자 C++의 대입 연산자는 여러 개가 사슬처럼 엮일 수 있다. int x, y, z; x = y = z = 15; // 위 식은 아래와 같이 처리됨 x = (y = (z = 15))); 위와 같은 관례를 지키는 것이 편한 길. 따라서 각종 객체의 대입 연산자는 좌변 인자에 대한 참조자를 반환해야함 연산자 =, +=, -=의 경우 아래와 같은 꼴로 반환 처리 class Widget { public: Widget& operator=(const Widget& rhs) // =연산자 { ... return *this; } Widget& operator+=(const Widget& rhs) // +=연산자 { ... return *t.. 2023. 2. 13. Effective C++ 항목9 : 객체 생성 및 소멸 과정 중에는 절대로 가상 함수를 호출하지 말자 Effective C++ 항목9 객체 생성 및 소멸 과정 중에는 절대로 가상 함수를 호출하지 말자 객체 생성 및 소멸 과정 중에는 절.대.로 가상 함수를 호출해선 안된다!! // 기본 클래스 class Transaction { public: Transaction(); virtual void logTransaction() const = 0; // 타입에 따라 달라지는 로그 기록 ... }; // 기본 클래스 생성자 Transaction::Transaction() { logTransaction(); } // Transaction 의 파생 클래스 class BuyTransaction : public Transaction { public: // Transaction 타입에 따른 거래내역 로깅 virtual vo.. 2023. 2. 12. 이전 1 ··· 15 16 17 18 19 20 21 ··· 47 다음 반응형