임베디드

임베디드

  • 분류 전체보기 (1142)
    • PL (150)
      • C++ (108)
      • Python (39)
      • Java (3)
      • Kotlin (0)
    • 알고리즘 (462)
      • 암기 (91)
      • 백준 (328)
      • 삼성 (17)
      • 종만북 (4)
      • 프로그래머스 (22)
    • 임베디드 (411)
      • 하드웨어지식 (12)
      • ATmega128 (98)
      • 32F429IDISCOVERY (57)
      • 임베디드리눅스 (15)
      • 리눅스커널스터디16기 (2)
      • 리눅스시스템프로그래밍 (97)
      • 운영체제 (26)
      • 컴퓨터구조 (4)
      • dd (1)
      • ubuntu (81)
      • opencv (18)
    • 드론 (99)
    • TIP (12)
  • 홈
  • 태그
  • 방명록
RSS 피드
로그인
로그아웃 글쓰기 관리

임베디드

컨텐츠 검색

태그

#linuxbirthday_a_message_from_Seoul_Korea !!

최근글

댓글

공지사항

아카이브

PL(150)

  • c++에서의 struct

    2019.08.24
  • 연산자 오버로딩과 관련한 카페 질문

    2019.08.23
  • 클래스 템플릿을 헤더파일에 작성해야 하는 이유

    2019.08.23
  • const 정리

    2019.08.23
  • Lvalue와 Rvalue

    2019.08.23
  • const 반환의 의미

    2019.08.22
c++에서의 struct

1. typedef를 생략할 수 있다. typedef로 재정의하지 않고 본연의 struct 이름을 자료형으로 사용할 수 있다 2. struct 안에 함수를 정의할 수 있다. struct 안의 함수는 기본적으로 inline 처리가 된다. 따라서 외부에다가 선언을 할 때는 반드시 inline 속성을 적용하려면 inline을 붙여줘야만 한다. class에서도 마찬가지로 적용된다 3. 구조체 안에서 사용하는 상수는 enum 혹은 이름 공간으로 처리한다 #include using namespace std; namespace SIMPLE_CONST { enum { SIZE = 10 }; } struct Simple { enum { SIZE = 10 }; int num; void showNum() { cout

2019. 8. 24. 18:20
연산자 오버로딩과 관련한 카페 질문

연산자 오버로딩과 관련해서 카페에 질문이 올라와 답변을 달았다 const Point &ref가 들어가면 기존의 operator*는 const 객체에 대해서도 재귀적으로 함수를 실행할 수 있어야 되는데, const 키워드가 없기 때문에 에러가 발생한다. 따라서 Point operator*(int times) 뒤에 const를 붙여야만 한다 #include #include using namespace std; class Point { private: int xpos, ypos; public: Point(int x = 0, int y = 0) : xpos(x), ypos(y) {} void ShowPosition() const { cout

2019. 8. 23. 20:19
클래스 템플릿을 헤더파일에 작성해야 하는 이유

main.cpp에 다른 소스파일에 작성되어 있는 템플릿의 정보를 알아야 하는 경우가 있다. 템플릿의 특수성 때문에 템플릿을 사용할 때는 헤더파일뿐만 아니라 컴파일 시점에서 소스파일 내용까지 알아야 한다. 따라서, 전처리에서 이미 템플릿 내용이 포함되어야만 한다. 서로 다른 소스파일에서 컴파일 될 때는 파일 단위로 컴파일되기 때문에 해당 시점에서는 main에서 템플릿 소스파일을 참조할 수가 없기 때문이다 해당 문제를 해결하는 문제는 총 2가지 해법이 있다 1. 헤더파일에서 템플릿 선언을 하는 것 2. 소스파일에서 하되, main에서 .cpp 파일을 inlcude하는 것

2019. 8. 23. 16:32
const 정리

1. const 반환은 해당 반환값이 Rvalue로만 사용된다면 붙여지게 된다. 만일 Lvalue로도 사용된다면 const를 붙이지 않아야 한다 2. 매개변수에는 웬만하면 모두 const를 붙이도록 한다. 왜냐하면 매개변수는 보통 대입되는 값으로 들어가기 때문에 변할 일이 없기 때문이다 3. const 키워드 함수도 최대한 함수마다 만드는 것이 좋다

2019. 8. 23. 16:17
Lvalue와 Rvalue

C++에서의 모든 표현식은 Lvalue 혹은 Rvalue다. Lvalue는 단일 표현식 이후에도 없어지지 않고 지속되는 객체다. Lvalue는 쉽게 말해 변수라고 생각하면 되고, Rvalue는 상수 혹은 임시 객체다. 예를 들어 전위연산자는 Lvalue, 후위연산자는 Rvalue다. 보통 Rvalue를 참조하려고 하면 에러가 뜬다. C++11 이상부터는 &&참조연산자를 이용해 Rvalue를 참조할 수 있다. 혹은 const T &를 사용한다 [추가] Lvalue가 될 수 없는 const 객체는 반드시 const 반환을 해야만 한다 int& Array::operator[](int index){ return pArr_[index]; } const int& Array::operator[](int index) ..

2019. 8. 23. 00:38
const 반환의 의미

#include #include using namespace std; class Sample { private: char *str; public: Sample() { str = new char[255]; strcpy(str, "1234"); }; ~Sample() { delete[] str; } char *getString() { return str; } }; int main(void) { char *tmp = new char[255]; Sample *s = new Sample(); tmp = s->getString(); strcpy(tmp, "abcd"); cout getString() getString(); // 컴파일 오류 strcpy(tmp, s->getString()); cout getStrin..

2019. 8. 22. 23:33
1 ··· 7 8 9 10 11 12 13 ··· 25
티스토리
© 2018 TISTORY. All rights reserved.

티스토리툴바