There's nothing wrong with your code, which makes me think you're using MVSC6 - It's your compiler. On a real compiler your code will work. To make it work form MSVC6 change SomeFunc so it returns something. i.e.
bool SomeFunc(const std::wstring& str) const
// Do something with str
error C2782: 'std::mem_fun1_t<_Result,_Ty,_Arg> std::mem_fun1(_Result (__thiscall _Ty::* )(_Arg))' : template parameter '_Ty' is ambiguous
c:\program files\microsoft visual studio 8\vc\include\functional(604) : see declaration of 'std::mem_fun1'
could be 'const CTest'
If I remove 'const' from the two methods, I get lots of different errors. Head meet brick wall.
I was wondering if it is possible to implement MDI in a MFC based ActiveX control. I was able to implement SDI (using a sample from MSDN), but I faced some difficulties when implementing MDI. Any help would be highly appreciated.
We are a Software Development Company based in India and we are looking for experienced C++ ATL WTL developers to work as freelancers on our client's projects. The projects will be basically to develop BHO's and Toolbars for Internet Explorer.
Interested Persons can submit thier proposals to us at http://www.kbscript.com/contact.php
You should be an experienced developer in C++ with ATL/WTL in order to be selected.
Please answer the questions below mentioned with your proposal.
1) What is your experience level? (Intermediate or Expert)
2) How much experience you have int he programming of Toolbars and BHO's?
3) Why do you think you the best choice?
4) What are your hourly rates?
5) Would you like to be paid on "Per Hour Basis" or "Per Project Basis"?
6) Any relevant examples of your previous work realted the "toolbars" and "BHO's"?
7) Your present job and work areas?
Doesn't surprise me - templates is the area where VC7.1 scores highest over VC6, in that it's nearly completely compliant with the C++ Standard, rather than being a not great attempt to be compliant with a draft standard (which was all that was around when VC6 was developed).
Let me guess - have you had to add/remove lots of 'typename' keywords? That's probably the biggest difference - VC6 will assume that dependent names are types, which isn't standard compliant. So, in this example from afxtempl.h (I compiled it with VC8)
<code>template<class TYPE, class ARG_TYPE>
CList<TYPE, ARG_TYPE>::NewNode(CList::CNode* pPrev, CList::CNode* pNext)
... some more code ...
VC6 will assume CList<TYPE, ARG_TYPE>::CNode is a type, but VC7.1+ won't...because it might not be. You need to put typename CList<TYPE, ARG_TYPE>::CNode to tell the compiler that you are making a guarantee that it's a type.
Anyway - I'd suggest that you're out of luck - you should be OK compiling console and simple Win32 programs, but MFC and ATL programs require a match between compiler and library. That's the portability between VC6 and VC7.1 - you recompile you MFC programs with thea correct compiler/library match.