Which type of string do you use in VC++ project?
-
There are too many string types you can use in your VC++ project. STL and many other non-MS libs use string class; MFC prefers CString; when it comes to COM, you will see _bstr_t and BSTR. …… Many code in my project just do string conversions——convert from one string type to another, which makes me fell ugly. Hello everyone, which is your favorite string type? :-D
A Chinese VC++ programmer
-
There are too many string types you can use in your VC++ project. STL and many other non-MS libs use string class; MFC prefers CString; when it comes to COM, you will see _bstr_t and BSTR. …… Many code in my project just do string conversions——convert from one string type to another, which makes me fell ugly. Hello everyone, which is your favorite string type? :-D
A Chinese VC++ programmer
I mainly use STL string unless I have to use CString for when working with MFC. Never did any COM programing so never used _bstr_t or BSTR. -Saurabh
-
There are too many string types you can use in your VC++ project. STL and many other non-MS libs use string class; MFC prefers CString; when it comes to COM, you will see _bstr_t and BSTR. …… Many code in my project just do string conversions——convert from one string type to another, which makes me fell ugly. Hello everyone, which is your favorite string type? :-D
A Chinese VC++ programmer
STL's basic_string template class is much more flexible in this respect and allows you to create any kind of the strings suitable for specific scenarios. You can use CString if the size of the project is going to be small. In case the project is a large one than I would rather prefer a wrapper class to encapsulate all the functionality and use it. BSTR's are used in COM.It's better to convert the CString to a _bstr_t and then pass it to the COM interface if you are working with COM since they have to maintain compatibility with VB datatypes and components can be invoked from there.
Somethings seem HARD to do, until we know how to do them. ;-)_AnShUmAn_
-
There are too many string types you can use in your VC++ project. STL and many other non-MS libs use string class; MFC prefers CString; when it comes to COM, you will see _bstr_t and BSTR. …… Many code in my project just do string conversions——convert from one string type to another, which makes me fell ugly. Hello everyone, which is your favorite string type? :-D
A Chinese VC++ programmer
TCHAR*
:-DIf the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke -
STL's basic_string template class is much more flexible in this respect and allows you to create any kind of the strings suitable for specific scenarios. You can use CString if the size of the project is going to be small. In case the project is a large one than I would rather prefer a wrapper class to encapsulate all the functionality and use it. BSTR's are used in COM.It's better to convert the CString to a _bstr_t and then pass it to the COM interface if you are working with COM since they have to maintain compatibility with VB datatypes and components can be invoked from there.
Somethings seem HARD to do, until we know how to do them. ;-)_AnShUmAn_
Thank you! Your suggestion is very constructive. :-D I do like STL's basic_string, but I have to use its c_str() memfunc when I pass a string object to MFC classes. :(
A Chinese VC++ programmer
-
TCHAR*
:-DIf the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain ClarkeI believe you're not serious :laugh:
A Chinese VC++ programmer
-
I believe you're not serious :laugh:
A Chinese VC++ programmer
You're wrong. (Well, I often have to use one or more of the classes you were talking about, but usually I prefer going to the metal) :laugh:
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke -
You're wrong. (Well, I often have to use one or more of the classes you were talking about, but usually I prefer going to the metal) :laugh:
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain ClarkeI know what you're mean. :) Thank you!
A Chinese VC++ programmer
-
There are too many string types you can use in your VC++ project. STL and many other non-MS libs use string class; MFC prefers CString; when it comes to COM, you will see _bstr_t and BSTR. …… Many code in my project just do string conversions——convert from one string type to another, which makes me fell ugly. Hello everyone, which is your favorite string type? :-D
A Chinese VC++ programmer
Maybe, you may want to consider this. http://www.ski-epic.com/templates_stl_rant/index.html[^]
-
There are too many string types you can use in your VC++ project. STL and many other non-MS libs use string class; MFC prefers CString; when it comes to COM, you will see _bstr_t and BSTR. …… Many code in my project just do string conversions——convert from one string type to another, which makes me fell ugly. Hello everyone, which is your favorite string type? :-D
A Chinese VC++ programmer
I don't really like any of them, but use whatever fits best into the current project. For instance, now I work on something with lots of COM, so I use CComBSTR. On the previous job, we were making an OS-portable system, so the obvious choice was std::string.
-
There are too many string types you can use in your VC++ project. STL and many other non-MS libs use string class; MFC prefers CString; when it comes to COM, you will see _bstr_t and BSTR. …… Many code in my project just do string conversions——convert from one string type to another, which makes me fell ugly. Hello everyone, which is your favorite string type? :-D
A Chinese VC++ programmer
all depends. i used to strongly abandon C-style strings (char* and all its variants) as long as i can. of course, when I have to use the C runtime (or any C APIs), then it's the only really valid reason to... as long as I code in C++, I use C++ strings. I used to use the MVC pattern also. so, for my UI layer, I mainly use CString as I use MFC. but as for my other layers (which are generally put into DLLs), i use std::string
[VisualCalc][Binary Guide][CommDialogs] | [Forums Guidelines]
-
Maybe, you may want to consider this. http://www.ski-epic.com/templates_stl_rant/index.html[^]
Ozer Karaagac wrote:
Maybe, you may want to consider this.
No. That is so old and ugly stuff. Most of it is even for VC6! And look at the second picture (the one named "Screenshots of native C++ equivalent") and how his class MLFString has a equals()-member! :wtf: :~ Somone who programs JAVA in C++ is not someone to whose programming tip I tend to listen!
Let's think the unthinkable, let's do the undoable, let's prepare to grapple with the ineffable itself, and see if we may not eff it after all.
Douglas Adams, "Dirk Gently's Holistic Detective Agency" -
Ozer Karaagac wrote:
Maybe, you may want to consider this.
No. That is so old and ugly stuff. Most of it is even for VC6! And look at the second picture (the one named "Screenshots of native C++ equivalent") and how his class MLFString has a equals()-member! :wtf: :~ Somone who programs JAVA in C++ is not someone to whose programming tip I tend to listen!
Let's think the unthinkable, let's do the undoable, let's prepare to grapple with the ineffable itself, and see if we may not eff it after all.
Douglas Adams, "Dirk Gently's Holistic Detective Agency":-O Three negative votes against just sharing an article without revealing any acceptance. Isn't it somewhat harsh? What a great liking to vote negative? Is this STL fanaticism? If so, good luck to you with your lovely STL. In STL we trust. :omg: