Introduction 기존에 C언어를 사용하던 개발자는 다른 변수나 상수를 가리키기 위해서 무조건 포인터(pointer)를 사용했습니다. 그러나 포인터 문법은 어떠한 행위도 용납되는 강력한 성능에 부수적으로 따라오는 사고도 많았는데요. 이러한 휴먼 에러 발생 확률을 줄이기 위해서 C++은 포인터가 꼭 필요한 상황이 아니라면 그 기능을 한정시킬 새로운 문법을 제공합니다. 이를 참조자(레퍼런스, reference)라고 하며, 오늘은 참조자가 무엇인지, 그리고 포인터와의 차이점은 무엇인지 살펴보도록 하겠습니다. 참조자란? 우리의 친절한 이웃 위키피디아는 참조자를 아래와 같이 정의 내리고 있습니다. In the C++ language, a reference is a simple reference datatyp..
Introduction C++을 학부 수업에서 처음 접할 때 아마 모두가 같은 코드를 적을 것입니다. 차이가 있더라도 굉장히 미미할 것이라고 생각되는데요. 아니라면 세대 차이에 충격받을… 일단 코드부터 보시죠. #include using namespace std; int main() { cout
1. Ubuntu 환경 설정 sudo apt-get install ssh sudo apt-get install openssh-server 위 두 명령어 중 하나를 선택해 SSH를 설치합니다. 설치를 한 이후에는 바로 SSH가 실행되지만 재시작 이후에는 아래 명령어로 SSH 서버를 열어주도록 합니다. sudo service ssh start 접기/펼치기 1.5. SSH 서버 IP 주소 확인 SSH 서버에 접속하기 위해서는 서버의 IP 주소가 필요합니다. 아래 명령어를 Ubuntu 터미널에 입력해 확인하도록 합시다. ifconfig | grep inet 혹은 ifconfig 입력 후 inet 부분을 확인하면 됩니다. 혹시 여기서 에러가 발생하시는 경우 아래 명령어로 네트워크 툴을 설치한 후 다시 실행하시면 ..
Introduction 안녕하세요, 알고리즘 엔지니어 YoungJ입니다. 근 2년간 SLAM을 비롯한 Computer Vision 스터디를 진행하며 많은 알고리즘들을 직접 구현 및 실험을 해봤는데요. 저는 개인적으로 Python을 통해 실험 및 데모 개발을 진행하고, C++로 성능 최적화 및 프로젝트에 코드를 추가하는 과정을 선호합니다. 이 과정마다 C++ 개발 단계가 저에게는 bottleneck으로 작용한다는 것을 발견했습니다. 그럴 때마다 C++를 더 잘하고 싶다는 욕망이 커져만 갔고, 이번 기회에 본격적으로 깊게 공부를 해보고자 합니다. 학부 과정 이후로 진득하게 서적과 여러 레퍼런스들을 찾아보는 과정이 처음이라 많이 낯설지만 조급해하지 않고 차근차근 나아가려 합니다. C++를 잘하는 기준은 뭘까?..
Flutter 공부 이전에 그 언어인 Dart를 공부하며 기록한 포스트입니다. Collection List, dictionary, set 등 다양한 데이터 타입들이 Dart 언어에서는 어떻게 정의되고 이용되는지를 살펴보던 중, 처음 보는 기능이 눈에 들어왔습니다. 데이터 타입들 정의 내부에 if와 for syntax가 있는 것을 발견할 수 있었는데요. Dart에서는 collection이라 불리는 이 기능으로 list, dictionary, set 등을 정의할 때 조건문이나 반복문을 통해 코드의 능률을 올릴 수 있습니다. Collection if 우선 조건문을 collection으로서 사용해 보겠습니다. 이 경우 조건문이 참인 경우 해당 원소를 데이터 타입에 추가하는 형식으로 되어 있습니다. void ma..