분류 전체보기53 [VEDA 1기 수강일지] 17일차 - Qt / C++ (2) : 다양한 위젯, layout 어어 학생 이해했어?못했어도 그냥 해(죽겟어요)수강한 개념 Icon radio button / check box lineEdit layout grid group box 문제 구현 / 개선방안 로그인 창 만들기- 작동은 아직 안된다... #include "widget.h"#include #include #include #include #include #include Widget::Widget(QWidget *parent) : QWidget(parent){ QStringList labels; labels addRow(labels.at(i), lineEdit[i]); } lineEdit[1]->setEchoMode(QLineEdit::Password); QPushButton *.. 2024. 8. 6. [VEDA 1기 수강일지] 16일차 - Qt / C++ (1) : Qt 튜토리얼, label, PushButton 수강한 개념 Qt- C++ 기반 GUI 툴- 약간 웹 하는것 같음... winform 하고는 또 다른 느낌...?- 여러 위젯들이 클래스로 만들어져 있고 Signal과 Slot으로 통신- 필요한 클래스 불러와서 블럭맞추기 하면 됨 label- 텍스트 박스 같은거- 이미지도 넣을 수 있다고 함 PushButton- 버튼- 진짜로 그냥 그 버튼 문제 구현 / 개선방안 계산기 만들기어엇... 하 씨..... 뭘 건드렸더니 안된다추후 수정 예정#include "widget.h"#include "./ui_widget.h"#include #include #include //계산기 일부만 구현const char* ButtonChar[2][4] = { {"1","2","3","+"}, {"0","C",".. 2024. 8. 5. [VEDA 1기 수강일지] 15일차 - 프로젝트 마무리, 시험 프로젝트 (어제 끝남)https://dynamicseagull.tistory.com/100 오늘은 쉬어 갑니당 VEDA 바로가기 : www.vedacademy.co.krVEDA(한화비전 아카데미) 영상으로 확인하기 : https://url.kr/zy9afd본 후기는 VEDA(한화비전 아카데미) 1기 학습 기록으로 작성되었습니다. #VEDA #개발의한계를veda #한화비전 #엣지디바이스 #한화비전아카데미 #KDT 2024. 8. 2. [VEDA 1기 수강일지] 14일차 - 2인 프로젝트 : to do list 문제 (요구사항) 할 일 목록(To-Do List) 프로그램:사용자가 할 일을 추가, 수정, 삭제, 조회 기능 구현 여러 사용자 이용 추가 구현 : Done List 추가 문제 구현 / 개선방안 설계- 파일을 사용자 별로 분리. 각 사용자별 할 일 파일과 완료 파일을 가짐.ㄴ 같은 이름을 가진 파일 생성 불가 처리- 클래스 2개 선언 (사용자, 할 일)- switch case 문으로 할 작업 선택- 헤더파일 2개 (todo, user) - 함수cpp 파일 2개로 분리 (협업목적) class- 사용자 (user) class : 사용자 정보- 할 일 (todo) class : 할 일을 벡터, 완료 벡터에 저장 -> 관리 functions- 사용자 생성- 추가 : 할 일 벡터에 추가- 수정 : 인덱스로 접.. 2024. 8. 1. [VEDA 1기 수강일지] 13일차 - C++ 기초 (6) / mordern C++ : 수강한 개념 예외처리 - try catch (throw) 메모리 누수 발생#include using namespace std;class Test{ int id;public : Test(int n) { id = n; cout - 메모리 해제가 되지 않음- 그래서 등장한 것이 스마트 포인터 (모던 c++) 예외 클래스- https://cplusplus.com/reference/exception/ C, C++ 링킹- EXTERN "C" : C 컴파일러로 컴파일 할 것을 지시//main.cpp#include using namespace std;extern "C" { void f();}int main(){ f();}//f.c#include void f(){ printf("Hello f\n");}Mordern .. 2024. 7. 31. [VEDA 1기 수강일지] 12일차 - C++ 기초 (5) : STL, 람다식 수강한 개념 map algorithm lvalue / rvalue#include using namespace std;void f(int& ref){ cout move random smart pointer for_each 람다- 유사 매크로#include using namespace std;int main(){ [](int x, int y) {cout 입출력 스트림- ignore- 포맷 파일입출력- 연산자 - fstream- 스트림 상태 검사 문제 구현 / 개선방안 기타 사항 VEDA 바로가기 : www.vedacademy.co.krVEDA(한화비전 아카데미) 영상으로 확인하기 : https://url.kr/zy9afd본 후기는 VEDA(한화비전 아카데미) 1기 학습 기록으로 작성되었습니다. 2024. 7. 30. [VEDA 1기 수강일지] 11일차 - C++ 기초 (4) : virtual, 추상클래스 수강한 개념 가상상속- 다중 상속의 모호성 해결- 상속 클래스명 앞에 virtual 가상함수 오버라이딩 추상클래스- 순수가상함수 : 선언만 있고 코드가 없는 함수- 순수가상함수가 하나라도 있으면 해당 클래스로는 객체 생성 불가능ㄴ이것을 추상클래스라고 함- 부모 클래스를 추상클래스로 만들면 자식클래스 확장이 용이함 일반화 / 템플릿- - STL 찾아보기 문제 구현 / 개선방안 기타 사항 VEDA 바로가기 : www.vedacademy.co.krVEDA(한화비전 아카데미) 영상으로 확인하기 : https://url.kr/zy9afd본 후기는 VEDA(한화비전 아카데미) 1기 학습 기록으로 작성되었습니다. 2024. 7. 29. [VEDA 1기 수강일지] 10일차 - C++ 기초 (3) : 오버로딩, static, 상속 수강한 개념 함수 오버로딩- 리턴타입은 상관 x, 호출시 인자 타입이나 개수에 따라 선택- ex. 생성자 함수 오버로딩- 소멸자 함수는 중복불가 디폴트 매개변수- 뒤에서부터 선언 static 멤버 / non-static 멤버- static 함수는 반드시 class 밖에서 초기화 해줘야함 -> 메모리 별도 할당받기 때문- static 멤버함수 -> 보통 static 멤버변수를 제어하기 위해 사용- 전역 변수나 전역 함수처럼 쓰고싶은데 특정 클래스에서만 사용이 가능하도록 하고싶을때- 객체 사이에 공유 변수를 만들고자 할때 (객체간의 통신)- static 멤버함수에서는 this 사용 불가※헤더파일에서 static 멤버변수 초기화를 했더니 링크 오류 LNK2005 발생.-> cpp 파일 두개에서 헤더파일을.. 2024. 7. 26. [VEDA 1기 수강일지] 9일차 - C++ 기초 (2) : 포인터, 참조 수강한 개념 객체 포인터 / 객체 배열- 거의 비슷함. 객체를 포인터로 접근- 포인터 다시 공부하거라ㄴ . 이랑 -> 차이 확실히 알기 객체 동적생성- new- delete- 메모리 해제 하고 나면 포인터변수를 NULL로 초기화 하는것을 권장ㄴ 할당은 해제되었지만 해제 전 주소를 담고 있으면 참조시 문제가 될 수 있기 때문- 동적할당 메모리 초기화ㄴ int *p = new int(20); -> 이게 되네ㄴ 자료형 구현이 class기?반인듯? this 포인터- 매개변수 이름 == 멤버변수 이름인 경우 사용- 멤버함수가 객체 자신의 주소를 리턴하는 경우 사용- 멤버함수가 아닌 함수에서 사용불가 -> 객체와 관련없기 대문- static 멤버함수에서 사용불가 -> 전역 메모리에 할당 되기때문(객체 생성 전에.. 2024. 7. 25. [VEDA 1기 수강일지] 8일차 - C++ 기초 (1) : 입출력, 클래스 수강한 개념 C++ 입출력- - cin, cout : 입출력 데이터 형식을 지정하지 않음ㄴ 버퍼 동기화 때문에 printf, scanf보다 2배 가량 느림ㄴ 코테시 참고 : ios_base::sync_with_stdio(false); rand()ㄴ 헤더파일 필요 : , ㄴ srand() : 반복문 안에 사용 x. 생성자에 한번만 넣어주면 된다.Random::Random(){ srand(time(NULL));}int Random::next(){ int temp = 0; temp = rand(); return temp;} 클래스- 구조체와 거의 비슷함- 캡슐화- 접근 지정자 (private, public, protected)- typedef 안쓰는 구조체 느낌... 생성자- 생성시 1번- 컴파일러가 기본생성.. 2024. 7. 24. [VEDA 1기 수강일지] 7일차 - C언어 (임베디드/리눅스) (2) 수강한 개념 구조체 배열 포인터 부트로더 일반화 프로그래밍 문제 구현 / 개선방안 기타 사항 2024. 7. 23. [VEDA 1기 수강일지] 6일차 - C언어 (임베디드/리눅스) (1) 수강한 개념오늘건 진짜 어떻게 정리해야할지 감도 안잡힌다 일단 레쓰고 환경세팅- wsl ubuntu ssh 접속 gcc 컴파일러- -c : 오브젝트 파일로 컴파일 -> 모듈에 사용할때 필요함- -S : 어셈블리 코드 만들기 (대문자 주의)- -O : 최적화 수준 지정- -o : extern 한 파일에서 정의되면 크기변경 등 하면 안됨 옵티마이즈 volotile전역변수든 지역변수든 volatile의 의미는 동일하다 문제 구현 / 개선방안 기타 사항 참고 링크 : https://elinux.org/RPi_GPIO_Code_Samples#pigpio 2024. 7. 22. 이전 1 2 3 4 5 다음