From: Sergey Vlasov <vsu@altlinux.ru> To: community@altlinux.ru Subject: [Comm] Re: Компоновка с STL в gcc3 Date: Tue, 15 Apr 2003 15:42:08 +0400 Message-ID: <20030415154208.20c1a9e5.vsu@altlinux.ru> (raw) In-Reply-To: <3E9B86CD.5090706@rmts.donpac.ru> On Tue, 15 Apr 2003 08:13:01 +0400 Прокопьев Евгений <john@rmts.donpac.ru> wrote: > > А, так вы пытаетесь работать с std::basic_string<unsigned char>. > > > > Надо делать специализацию std::char_traits<unsigned char>. В > > стандартном C++ <string> должен определять специализации только для > > char и wchar_t - что он и делает в gcc3. Для общего случая > > определяется только пустышка без реализации. [куча ошибок поскипана] > Это случилось после того, как basic_string<unsigned char> я заменил на > char_traits<unsigned char>. Так менять нельзя. Нужно написать где-то в своём .h специализацию std::char_traits<unsigned char>; лучше там же определить и typedef на std::basic_string<unsigned char>, чтобы нельзя было им пользоваться, не объявив эту специализацию. Т.е. #include <string> template <> struct std::char_traits<unsigned char> { ... }; typedef std::basic_string<unsigned char> my_super_cool_string; Можно явно указывать свой класс traits вторым параметром шаблона std::basic_string. > Собственно вопрос: где искать реализацию для char, чтобы методом > копировать/вставить/заменить сделать аналог (как-то все это не > по-человечьи), /usr/include/c++/3.2.1/bits/char_traits.h > и где читать: > > a) про реализацию стандарта C++ в gcc3 > б) про саму стандартную библиотеку C++ (по C маны есть, а тут не > предусмотрели :( ) /usr/share/doc/gcc-3.2/libstdc++
prev parent reply other threads:[~2003-04-15 11:42 UTC|newest] Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top 2003-04-14 10:41 [Comm] " Прокопьев Евгений 2003-04-14 12:12 ` [Comm] " Sergey Vlasov 2003-04-14 12:52 ` Прокопьев Евгений 2003-04-14 13:25 ` Sergey Vlasov 2003-04-15 4:13 ` Прокопьев Евгений 2003-04-15 11:42 ` Sergey Vlasov [this message]
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20030415154208.20c1a9e5.vsu@altlinux.ru \ --to=vsu@altlinux.ru \ --cc=community@altlinux.ru \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
ALT Linux Community general discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 community community/ http://lore.altlinux.org/community \ mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com public-inbox-index community Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.community AGPL code for this site: git clone https://public-inbox.org/public-inbox.git