C++ 상속, 다이아몬드 문제란? 그리고 피하는 방법 위 그림은 C++ 상속, 다이아몬드 문제를 이해하는 데 도움이 됩니다. 클래스 A에서 파생되는 클래스 B와 C가 있다고 가정합니다. 그리고 C++ 상속(다이아몬드를 유발하는 다중 상속)으로 클래스 B와 C의 파생 클래스 D도 생성합니다. (상상만으로도 한숨 나오는 C++ 상속 구조입니다) 여기서 C++ 상속, 다이아몬드 문제의 발생 이유가 나타납니다. 위 그림을 토대로 구체적인 코드를 작성해 보겠습니다. 123456789101112131415--Animal 클래스는 윗 그림의 클래스 D와 같습니다.-- class Animal { -- ... -- }; // base class{ int weight; public: int getWeight() { ret..
Jetson TK1, FTDI USB Serial 컨버터 디바이스 드라이버 모듈 설치 엔비디아의 Jetson TK1용 커널에는 FTDI USB to Serial의 Device Driver가 포함되어 있지 않습니다. 이를 해결 하기 위해선 Jetson TK1 Kernel 소스에서 FTDI USB Serial Converter의 모듈을 추출하고 부팅시 해당 모듈을 로드하여 사용토록 설정해야 합니다. 다운로드 : ftdi_sio.zip lsusb명령으로 시리얼 컨버터를 인식하는지를 먼저 확인합니다. 123$ lsusbBus 002 Device 003: ID 0403:6001 Future Technology Devices Internalional, LTd FT232 USB-Serial (UART) ICColor..
QtCreator 단축키, 주로 사용하는 것 제가 유용하게 사용하던 QtCreator 단축키 소개합니다. 모든 단축키를 항상 외우진 못해 적어놨던 것인데, 이 글을 보고 도움되는 분들이 많았으면 좋겠네요. QtCreator 단축키는 Tools > Options > Environment > Keyboard에서 확인할 수 있으며, 이 메뉴에서 단축키 변경할 수 있습니다. 아래는 제가 모은 QtCreator 주요 단축키입니다. 확인해 보세요. General Keyboard Shortcuts창 닫기 : Ctrl+W모든 창 닫기 : Ctrl+Shift+W 뒤로 이동 : Alt+Left앞으로 이동 : Alt+Right 라인으로 바로 이동 : Ctrl+L 초기화면(Welcome 모드) : Ctrl+1코드 편집 모드 ..
[R프로그래밍 기초 강좌] MySQL 연동하기, RMYSQL R프로그램과 MySQL 연동 순서 1. 컴퓨터에 RMySQL 패키지를 설치.2. dbConnect 함수를 사용해 데이터베이스 연결.3. dbGetQuer로 SELECT를 시작하고 결과 세트 반환.4. dbDisconnect를 사용해 데이터베이스 연결 종료. 여기서 소개하는 R프로그래밍 기초 강좌 레시피는 RMySQL 패키지가 컴퓨터에 설치되어 있어야 한다. 그리고 그 패키지는 다시 MySQL 클라이언트 소프트웨어가 있어야 한다. MySQL 클라이언트 소프트웨어가 아직 설치 및 환경 설정되어 있지 않다면 MySQL 문서를 읽거나 시스템 관리자에게 물어보자. dbConnect 함수는 MySQL 데이터베이스로의 연결을 만든다. 그리고 이후에 쓰이는 ..