본문 바로가기
반응형

SWE326

[c++] virtual function 가상함수 / 동적 바인딩 / 오버라이딩/ 순수가상함수 가상함수 virtual function : 함수를 가상(virtual)으로 만드는 것은 컴파일러에게 "나는 함수가 어떻게 구현되는지 모른다. 프로그램에서 사용될 때까지 기다려라. 그리고 객체 인스턴스로부터 구현을 얻어라." 라고 말하는 것이다. 동적 바인딩 dynamic binding : 프로시저의 구현을 결정하는 실행시간까지 기다리는 기법을 종종 사후 바인딩(late binding) 혹은 동적 바인딩(dynamic binding)이라고 부른다. 가상함수는 C++가 사후 바인딩을 제공하는 방법이다. 다형성 polymorphism : 다형성은 사후 바인딩 기법의 수단으로 한 함수 이름에 여러 의미를 연관시키는 능력을 말한다. 그리하여 다형성, 사후 바인딩 그리고 가상 함수는 실제로 모두 같은 주제이다. 오.. 2019. 9. 26.
[c++] private과 protected private : 멤버 변수 또는 멤버 함수는 다른 어떤 클래스의 멤버 함수에서도 그 이름 자체로는 접근할 수 없다. 심지어 파생 클래서의 멤버 함수에서조차도 말이다. protected : 파생 클래스(상속 받은 클래스)이외의 클래스 또는 함수에서는 private 제한자를 사용한 효과를 갖는다. 그러나 파생 클래스에서는 이름을 직접 사용하여 접근 가능하다. 2019. 9. 26.
베지에 곡선 QPainterPath::quadTo : a quadratic bezier (2차 베지에 곡선) QPainterPath::cubicTo : a cubic Bezier (3차 베지에 곡선) 베지에 곡선 : n개의 점으로부터 얻어지는 n-1차 곡선 : 선분 위를 일정 속도로 움직이는 점과 그러한 점과 점을 잇는 또 다른 선분, 그리고 그 위를 일정 속도로 이동하는 또 다른 점 등을 조합해 최종적으로 특정 점이 그리는 궤적을 이용해 곡선을 그려내는 방법. 이해를 위한 참고 링크 (움짤을 보고 점의 움직임을 보면 베지에 곡선에 대해 이해하기 쉽다.) : https://blog.coderifleman.com/2016/12/30/bezier-curves/ 중학생도 알 수 있는 베지에 곡선(Bezier Curves).. 2019. 9. 24.
[Qt예제코드] 연산자 재정의 (연산자 오버로딩) 연산자 오버로딩 CameraData operator = (CameraData c) { CameraData tmp;/* tmp.power = c.power; tmp.ip = QString(c.ip); tmp.connected = c.connected;*/ return tmp; } 재정의한 연산자 사용법 CameraData data1; data1.operator = (data2); 2019. 9. 18.
반응형