C는 컴퓨터 입장에서 아주 직관적이지만 모르는 사람이 보기엔 이상하게 보인다
char* str = "ABC";
char* str2 = str;
str[0] = 'C'; // str = "CBC" str2 = "CBC"
여기서 str2가 "CBC"가 되는건 컴퓨터 입장에선 아주 당연한거지만 사람이 신경쓰기는 쉽지않다
C++은 그냥 보기엔 꽤 직관적인것 같다
string str = "ABC";
string str2 = str;
str[0] = 'C'; // str = "CBC" str2 = "ABC"
하지만 보기엔 친절해도 사실은 아주 복잡하다
여기서 string(const char*) 생성자와 operator=(const string&) 연산자가 구현되지 않으면 이 당연하게 보이는 식은 안돌아간다
즉 "자바처럼 위에만 신경쓰세요 ^^" 하는 것처럼 보이지만 사실은
"코드는 예쁘게 보여드리지만 안에서 어떻게 되는지는 전부 아셔야해요 ^^" 라는것
그나마 C는 그저 포인터와 구조체, 공용체뿐이지만 C++은 템플릿과 클래스의 조력으로 훨씬 복잡하다
이것들이 어떻게 작동하는지 모르고 코드를 짜면 높은 확률로 제대로 써먹기 힘들다
결국 사람도 컴퓨터한테도 신경쓸곳이 많은 언어다
혀어어어어어어어엉........ 핫. 혀엉..... 흑... 하앗... 흐윽... 형. 하앙.혀엉.... 하앙... 흐윽... 항. 항. 형... 하앙. 흐으윽... 형... 흡... 혀엉.. 하아아앗. 혀엉.. 흡... 흐읍... 형.. 하앗. 하아앙... 형... 하앙... 흐윽... 혀어어엉.. 하앙. 항. 형... 하앙. 혀엉.... 하앙. 흑... 항. 형... 흡 하앗. 혀엉..... 흑. 흣 -> Hello World.
결국 string 이란 클래스는 애초에 존재하지 않았고, 그저 std::basic_string<T, CharTrait, Allocator> 의 Alias 였다는걸 깨닳으면서 산으로 가는데.......
고딩아.아래 글 썻어 고딩아^^ - dc App
ㄴ 그리고 얼로케이터까지 파버리게 되는... ㅋㅋㅋ
ㄴ ㅋㅋㅋㅋ ㅇㄱㄹㅇ
그래사 C++ 이 욕먹지..
위로도 아래로도 갈 수 있어 좋은 언어쥬~ 스까 스까~
결론: C는 동작이 로우레벨에서 당연하게 굴러가는데 C++은 사람이 편하게 만들었지만 결국 로우레벨을 알아야하는 ㅈ같은 언어다
대신 가진게 없으면 빈곤이 너무 티남.
mfc 하면 쌍욕 하겠어??
ㄴ 그래서 안함
닉넴임은 CS 인데ㅋㅋㅋㅋㅋㅋ 아이러니 하네
CSharp인데여?
갤와서 C# F# 빠는글만 썻는데 ㅇㅅㅇ
알못 ㅇㅇ 템플릿 없는 언어는 더 이상 만족할 수 없어.. - return 0;
ㄴ 템플릿 중독자 ㅇㅈ합니다
저도 템플릿 성애자인데, 구체적으로 님들은 템플릿의 어느 부분이 그렇게 좋다는 거죠? 전 컴파일 타임에 계산 다 해놓는다는 점이 너무 좋더라고요.