SHLoadImageFile(L"\\Program Files\\TrainingApp\\background.png"); whats that L in the argument for?

Posted by ashishsony on Stack Overflow See other posts from Stack Overflow or by ashishsony
Published on 2010-04-01T09:23:10Z Indexed on 2010/04/01 9:53 UTC
Read the original article Hit count: 417

Hi,

ive been working on c++ on linux for the past 2 years,and switched to windows c++ programming recently.

can anyone tell me what that L is there in the argument of the function:

SHLoadImageFile(L"\\Program Files\\TrainingApp\\background.png");

and on viewing certain sample code in MSVS C++ i came across hundereds of typedefs like..

LPARAM// typedef LONG_PTR LPARAM... here LONG_PTR is again typedef as __w64 long

WPARAM// typedef UINT_PTR WPARAM...

so there is a lot of chained typedefs.. I never saw this much of typedef chaining on c++ programming on linux using gcc..

what i want to say is that it just creates more confusion in this way for windows application programming.. while ive seen application programming on linux using frameworks like Qt.. there such things are rarely used.. so is there specific purpose in typedefining again and again on MSVSC++?? for eg.. there are typdefs like

typedef int BOOL;

whats the use of this when normal bool is available already..?? there are hundred other cases ive come across where just to decide what data type to use becomes so difficult.. it becomes difficult to understand a pre written code in this fashion too..

Thanks.

© Stack Overflow or respective owner

Related posts about windows-programming

Related posts about c++