가상함수 순수가상함수 가상함수가상 함수는 파생 클래스가 안전하게 재정의할 수 있는 함수이다. 만약 상속 관계가 아니라면 가상 함수를 선언할 필요가 없으므로 가상 함수는 상속 계층내에서만 의미가 있으며 파생 클래스에게 재정의 기회를 주기 위해 존재하는 것이라고 할 수 있다. 그러나 가상 함수를 반드시 재정의해야만 하는 것은 아니다. 기반 클래스의 동작을 그대로 쓰고 싶으면 단순히 상속만 받고 변경할 필요가 있을 때만 재정의하면 된다. 기반 클래스가 가상 함수를 만드는 이유는 혹시라도 재정의하고 포인터로 호출할 때를 대비한 것이다. 가상 함수는 재정의해도 되는 함수이지 반드시 재정의해야 하는 함수는 아니다. 순수가상함수순수 가상 함수(Pure Virtual Function)는 파생 클래스에서 반드시 재정의해야 하는 함수이다. 순.. 연산자 오버로딩 멤버 연산자 함수원래의 피연산자보다 인수의 개수가 항상 하나 더 적은데 +는 이항 연산자이므로 두 개의 피연산자를 취하지만 멤버 연산자 함수의 인수는 하나만 있으면 됨.이 함수를 호출하는 객체인 *this가 암시적인 좌변이 되며 나머지 우변이 될 대상만 인수로 전달받음.나 자신(this)과 연산될 대상이 누구인가만 알면 되는 것.만약 ++ 단항 연산자를 멤버 연산자 함수로 오버로딩한다면 호출하는 객체 자체가 피연산자가 되므로 인수는 필요 없음. =, (), [], -> 연산자들은 반드시 멤버 연산자 함수로만 만들어야 함. 전역 연산자 함수전역 연산자 함수는 원래의 피연산자와 같은 수의 인수를 가짐. +연산자가 이항 연산자이므로 operator+ 전역 연산자 함수는 두 개의 인수를 취하고 ++ 연산자는 단.. inline __inline __forceinline inline인라인 함수는 프로그램의 실행 속도를 높이기 위해 추가된 기능이며 C언어의 매크로 함수와 비교됨 일반 함수와 인라인 함수의 차이점일반 함수의 경우일반 함수의 호출 방법은 프로그램 실행 중 함수를 실행해야 한다면 해당 함수의 주소로 점프시켰다가 함수의 처리가 종결되면 다시 원래의 자리로 돌아오는 것으로 앞뒤로 점프를 수행하고 점프할 위치를 기억하려면 함수를 사용하는데 시간이 많이 걸림 인라인함수의 경우인라인 함수는 컴파일된 함수 코드가 프로그램의 코드 안에 직접 삽입되어짐즉, 컴파일러가 함수를 호출하는 대신 그에 대응하는 함수 코드로 대체한다는 것을 의미하며 함수 호출없이 삽입된 함수 코드를 그 자리에서 처리하므로 해당 함수를 수행하기 위해 프로그램이 다른 주소로 점프했다가 되돌아 올 필요가 없.. (오류해결법) intellisense 추가정보가 없습니다 오류내용intellisense 추가정보가 없습니다솔루션으로 프로젝트를 관리하던 도중 스코프연산자가 안 먹힐 때 솔루션 ncb 파일을 삭제 후 다시 실행하면 됨 MSDN이 제시하는 해결방법프로젝트 디렉터리의 루트에 있는 비컴파일 브라우저 파일(.ncb)이 읽기 전용이거나 손상된 경우 IntelliSense 정보를 사용할 수 없음이 문제를 해결하려면 다음 작업을 수행솔루션을 닫습니다..ncb 파일을 삭제합니다.솔루션을 다시 엽니다.솔루션을 다시 열면 .ncb 파일이 새로 만들어집니다. 컴퓨터구조론 7판 솔루션 컴퓨터구조론 8판 솔루션 컴퓨터구조론 9판 원서 cout 출력 포맷 퍼온 주소 : http://repilria.tistory.com/243 cout은 ostream의 메서드이며, ostream 클래스는 ios 클래스로부터 상속되고, ios 클래스는 ios_base 클래스로부터 상속된다. ios_base 클래스는 출력 상태를 서술하는 정보를 가지고 있다. 1. 진법 변경 Manipulator를 사용하여 화면에 정수를 출력할 때 사용되는 진법을 제어하며, ios_base의 멤버 함수를 사용하여 필드 폭과 소수점 아래 자릿수를 제어할 수 있다. 즉, hex(cout)과 같은 함수 호출은 cout 객체의 수치 출력을 16진수로 설정하며, 다른 진법으로 다시 설정될 때 까지 모든 정수들을 16진법으로 출력한다. 또한 cout 이전 1 ··· 5 6 7 8 9 10 11 ··· 15 다음