Firstly, I want to have a clearly overall look at MFC, Win32API .
Is:
Win32API: The first layer between hardware and software in prog [ except assembly ] MFC : A wrapper by Microsoft ? It helps us in design GUI and a lot of library for easier and faster programming.
My problem is : I want an easy coding in GUI, no need to write every code line in win32api so I need MFC right ? And somehow I can't get MFC library works [ it costs me 1 day to find that CSocket is really buggy ] . So I intend to use another famous library like Boost .
To clear my question : I know about .Net and C#, but I love C++ so I really want a good way to combine GUI design and speed of C++ .
Is it go开发者_C百科od to design GUI in .Net and coding in C++, does it have any disadvantage compared to MFC+ C++ .
Thanks first :)
Win32 is the C API to the Windows OS, not to hardware. Many of these functions ask the OS to manipulate hardware on your behalf.
MFC is the original C++ "wrapper" to Win32. It's fairly old now, so if you want "easy coding", may I suggest you look at .NET instead.
The win32 API is the lowest level documented programming interface to Windows.
MFC is a C++ class library providing a fairly thin wrapper around the win32 API.
Boost is not a GUI library. If you must use C++ and don't want to use MFC you could look at QT or wxWidgets.
If you want easy GUI coding use C# and WinForms or WPF.
About basics: Boost library is not microsoft library and it should not be used for any GUI development. It is an utility library and could be used along with microsoft libararies. It is just an extended version of STL, TR1 and TR2.
It is difficult develop GUI using MFC than C# (especially when you dealing with owner drawn controls/subclassing the controls). So, I would suggest use C# for GUI development and backend you can use C#. Communication between these two can be achieved using socket programming.
I would suggest go for Adobe FLEX GUI tool for developing the GUI which reduces the UI development time as compared to any windows GUI libraries.
精彩评论