c++

11월 21일 추상클래스

송시혁 2013. 11. 21. 16:15




함수의 가장 왼쪽의 virtual을 붙이면 가상함수가 된다. 거기에 0을 대입하면 순수가상함수가 되며, 

이 순수 가상함수를 지니고 있는 객체를 추상클래스라고 부른다.



명칭부호화 







어셈블리에서 명칭부호화를 확인 할 수 있다.



위의 그림은 명칭 부호화가 되어있다. 







소스에서 extern "C"를 붙이고 어셈블리 파일로 컴파일 하면 다음과 같이 사라진다. 그러나 한 개의 함수만 붙일 수 있다.


그래서 위의 소스와 같이 extern "C"를 함수 2개의 붙이고 컴파일하면 에러가 뜬다.  반드시 한 개의 함수만 할

수 있다. 아래 그림은 제일 위 test()함수만 extern "C"를 붙여놓은 경우이다.








smart는 추상클래스이다. 아래 그림도 객체를 만들 수 없다라는 에러를 띄울 것이다.