Study: Software(SW)
[Error fix] userdel: user sjchoi is currently used by process 14356
문제 상황 userdel 명령어를 사용하여 사용자를 지우려는데, "userdel: user sjchoi is currently used by process 14356" 다음과 같은 오류가 발생. 이때 "kill 14356" 명령으로 해당 프로세스를 죽여도 유사한 다른 프로세스가 계속하여 생성. 해결 방안 다음 명령어를 통해 모든 프로세스를 죽일 수 있음. 이후 userdel -r 옵션을 주어 사용자를 비롯하여 폴더까지 함께 삭제 가능. $ sudo killall -15 -u sjchoi $ sudo userdel -r sjchoi 참고 userdel: user vivek is currently used by process 749 error and fix on Linux: https://www.cyberc..
[C++] 객체지향 프로그래밍: 변수 및 구조체 접근법 정리 (feat. struct vs class)
1. 구조체 (struct vs class) struct 멤버 변수/함수에 대한 기본적으로 제공되는 접근지시자가 public이며, 대게 단순한 데이터를 표현하는데 사용합니다. class 멤버 변수/함수에 대한 기본적으로 제공되는 접근지시자가 private이며, 대게 기본적으로 제공되지 않는 constructor, operator를 사용하지 않거나 다양한 접근지시자가 필요할 때 사용합니다. 2. 변수 및 구조체 (pointer, reference, struct, class, union, choice, enum 등) 구조체 선언 typedef struct packet1 { int data0; int* data1; union uni{ int data2 int data3 }Uni; }Packet; + 구조체 선..
[OpenSource 사용하기] googleMock(gMock): C++ Mocking Library for googletest
본 문서는 'OpenSource 뜯어보기'라는 프로젝트의 일환으로. Googlemock라는 googletest를 위한 Mocking Framework를 설치, 실행 등 사용하는 방법과 더불어, library 내 구조, 소스 분석 및 패턴 분석까지 다룰 예정이니 해당 오픈소스에 관심이 있다면 봐두길 권장합니다. 추가로, 일전에 [OpenSource 사용하기] Googletest(gtest): test library라는 googletest library를 설치, 실행 등 사용하는 방법에 대해 다룬 적이 있습니다. 이글을 읽고 googletest에 대해 알고 읽으시길 권장 드립니다. 1. 오픈소스의 목적 1.1 'GoogleMock(gMock): Mocking Library'에 대하여. Mocking: uni..
[Error Fix] invalid new-expression of abstract class type (feat. 추상 클래스)
문제 상황 invalid new-expression of abstract class type Because the following virtual functions are pure within 위와 같은 문제 발생 해결 방안 순수 가상 함수로 이루어진 추상클래스를 상속한 클래스가 일부 함수를 override하지 않아서 발생한 문제. 이를 해결하기 위해서는? i) 추상클래스에 정의된 멤버함수를 상속한 클래스에서 모두 override 해주거나, ii) 순수 가상함수로 정의된 함수를 가상함수로 바꾸기