The c ++ Programming Language Lecture 1 From c to c++
The C++ Programming Language Lecture 1: From C to C++
Brief introduction Requirements
Brief Introduction & Requirements
Coding Style Requirements - Naming Conventions Hungarian Notation o IGlobalPrefix[TypePrefix]-BaseTag-Name [GlobalPrefix] C++ member variables start with: m Global variables start with: g Static data members start with Classes start with: C Interfaces start with: I Standard [PrefIX: A pointer. CHAR* psz g An array. DWORD rgfype[.]i pp-A pointer to a pointer. int* ppTop i h -a handle. HANdle hFile ref -A reference to. char Func(string& refResult
Coding Style Requirements -- Naming Conventions ◼ Hungarian Notation ◼ [GlobalPrefix][TypePrefix]-BaseTag-Name ◼ [GlobalPrefix] ◼ C++ member variables start with: m_ ◼ Global variables start with: g_ ◼ Static data members start with: s_ ◼ Classes start with: C ◼ Interfaces start with: I ◼ Standard [Prefix]: p – A pointer. CHAR* psz; rg – An array. DWORD rgType[…]; pp – A pointer to a pointer. int* ppTop; h – A handle. HANDLE hFile; ref – A reference to. char Func(string& refResult);
Coding Style Requirements Naming Conventions(cont) Standard“ BaseTag” void BOOL BYTE vfbd UINT >1i CHAR Double float fl WCHAR wch ULONG >u1 LONG NOI dw HRESULT hr function Name-Meaningful and Capitalizing every word NULL str USHORT, SHORT, WORD ■ Example m_pdTopofstack CTypelib -g_fSwitchForDest s SZStartingURL
Coding Style Requirements -- Naming Conventions (cont.) ◼ Standard “BaseTag” void -> v int -> i BOOL -> f UINT -> ui BYTE -> b CHAR -> ch Double -> d float -> fl WCHAR -> wch ULONG -> ul LONG -> l DWORD -> dw HRESULT -> hr fn -> function sz -> NULL str USHORT, SHORT, WORD -> w ◼ Name – Meaningful and Capitalizing every words ◼ Example ◼ m_pdTopOfStack ◼ CTypeLib ◼ g_fSwitchForDest ◼ s_szStartingURL
Coding Style Requirements Naming Conventions(cont) Let 's have some tries A flag indicates whether a C++ object has been initialized BOOL m iNitialized A Session id: dWord dwsessionID a Pointer to byte buffer BYTE* pbBuffer a global buffer to store logfile filename CHAR g SZLOgEile [MAX NUM] a pointer to a global logfile name CHAR* g ps lOgfIle;
Coding Style Requirements -- Naming Conventions (cont.) ◼ Let’s have some tries… ◼ A flag indicates whether a C++ object has been initialized: ◼ BOOL m_fInitialized; ◼ A Session ID: ◼ DWORD dwSessionID; ◼ A Pointer to BYTE buffer: ◼ BYTE* pbBuffer; ◼ A global buffer to store logfile filename: ◼ CHAR g_szLogFile[MAX_NUM]; ◼ A pointer to a global logfile name: ◼ CHAR* g_pszLogFile;