본문 바로가기
반응형

C++4

[C++] typedef와 using의 차이점 C++에서 typdef와 using 둘 다 별칭 생성 키워드이다. 그러면 차이점이 뭘까? 동일한 기능의 키워드가 왜 두 개 존재하게 되었을까? typdef typedef란? typdef는 C언어에서 사용되던 문법이다. 타입의 이름에 대한 별칭을 생성하는데 사용된다. 즉, struct나 class에 대해서만 사용 가능하다. Typedef 예제 코드 typedef double distance_t; class Circle { public: distance_t radius; }; // double 타입에 대한 별칭으로 distance_t를 생성하였다. using Using이란? C++11부터 추가된 문법. Typedef와 다르게 타입뿐만 아니라 변수, 함수, 템플릿 등 모두 별칭 생성이 가능하다. using 예.. 2023. 5. 7.
실행 에러 AddressSanitizer odr violation 해결 방법 문제 발생 상황은 프로그램을 실행하였더니 라이브러리 로딩하는 중에 아래 로그를 남기고 종료되었다. 에러 로그 29-Jan-2021 11:25:04.597 loading DynDB instance 'sample' driver '../driver/lib/sample.so' ================================================================= ==2511090==ERROR: AddressSanitizer: odr-violation (0x7f9e15d78d00): [1] size=8 'dns_lctx' log.c:69:33 [2] size=8 'dns_lctx' log.c:69:33 These globals were registered at these points.. 2023. 1. 20.
[C++11] auto 데이터 타입 정리 c++11 부터 std에 추가된 auto keyword c++ 에서 사용되는 데이터 타입으로는 int, bool, string, double, .. 이 있을 수 있다. 이 모든 것을 대신할 수 있는게 auto keyword이다. 보통 개발자가 변수의 자료형을 선택하는데, auto keyword는 컴파일러가 자료형을 선택한다. ( 개발자 입장에서는 값에 따라 자동으로 타입이 결정되므로 편할 수 있다.) 기본 사용법 using namespace std; auto value1 = 1; auto value2 = "haha"; auto value3 = 3.14; 다른 데이터 타입과 마찬가지고 '자료형 변수이름 = 값' 으로 사용하면 된다. 위에서 value1은 integer, value2은 string, valu.. 2021. 4. 23.
[c++] template(템플릿)이란? | 함수 템플릿, 알고리즘 추상화 템플릿이란? 함수나 클래스가 개별적으로 다시 작성하지 않고도 각기 다른 수많은 자료형에서 동작할 수 있게 한다. 템플릿의 종류는 함수 템플릿과 클래스 템플릿 두 가지가 있다. 함수 템플릿 : 하나의 함수를 모든 형의 변수에 대해 적용할 수 있게 정의할 수 있다. 함수의 정의와 선언 template template 위에 있는 것은 템플릿 전위문(prefix)이라고도 한다. 두 표현 모두 같은 의미이다. class나 typename 모두 사용 가능하다. (typename 키워드는 클래스를 생성 할 때 활용하는 class 키워드와 혼동되지 않도록 나중에 추가된 키워드이다) 뒤따라 나오는 함수 정의나 선언이 템플릿이며 T는 형 매개변수임을 컴파일러에게 말하는 것이다. 문맥상 class란 단어가 실제로 의미하는 .. 2019. 9. 27.
반응형