added WXDLLIMPEXP_TEMPLATE_INSTANCE_BASE() macro and use it to work around VC6 warnings about non DLL-exported templates

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48691 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2007-09-14 21:02:09 +00:00
parent cb626df225
commit 7c77f33480
3 changed files with 46 additions and 1 deletions

View File

@@ -2834,6 +2834,9 @@ public:
};
#if wxUSE_STL_BASED_WXSTRING
WXDLLIMPEXP_TEMPLATE_INSTANCE_BASE( wxStringTypeBufferBase<wxStringCharType> )
class wxStringInternalBuffer : public wxStringTypeBufferBase<wxStringCharType>
{
public:
@@ -2845,7 +2848,11 @@ public:
DECLARE_NO_COPY_CLASS(wxStringInternalBuffer)
};
class wxStringInternalBufferLength : public wxStringTypeBufferLengthBase<wxStringCharType>
WXDLLIMPEXP_TEMPLATE_INSTANCE_BASE(
wxStringTypeBufferLengthBase<wxStringCharType> )
class wxStringInternalBufferLength
: public wxStringTypeBufferLengthBase<wxStringCharType>
{
public:
wxStringInternalBufferLength(wxString& str, size_t lenWanted = 1024)
@@ -2874,6 +2881,9 @@ typedef wxStringInternalBufferLength wxStringBufferLength;
typedef wxStringInternalBuffer wxUTF8StringBuffer;
typedef wxStringInternalBufferLength wxUTF8StringBufferLength;
#elif wxUSE_UNICODE_WCHAR
WXDLLIMPEXP_TEMPLATE_INSTANCE_BASE( wxStringTypeBufferBase<char> )
class WXDLLIMPEXP_BASE wxUTF8StringBuffer : public wxStringTypeBufferBase<char>
{
public:
@@ -2884,6 +2894,8 @@ public:
DECLARE_NO_COPY_CLASS(wxUTF8StringBuffer)
};
WXDLLIMPEXP_TEMPLATE_INSTANCE_BASE( wxStringTypeBufferLengthBase<char> )
class WXDLLIMPEXP_BASE wxUTF8StringBufferLength
: public wxStringTypeBufferLengthBase<char>
{