BUG: È ancora visualizzato un "C4768" messaggio di avviso anche se si utilizza il pragma warning per disattivare l'avviso in Visual c ++

Il presente articolo è stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell’utente. Tuttavia, un articolo tradotto in modo automatico non è sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, più o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non è la sua. Microsoft non è responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell’utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.

Clicca qui per visualizzare la versione originale in inglese dell’articolo: 167355
Questo articolo è stato archiviato. L’articolo, quindi, viene offerto “così come è” e non verrà più aggiornato.
Sintomi
Anche se si utilizza il pragma warning per disattivare l'avviso, vengono generati avvisi analoghi al seguente:
avviso C4786:
' std::rb_tree < CAiSpanningTree dello Stato, std::less <State> >:: TransClosureNode, CAiSpanningTree dello stato, std::less <State> >:: TransClosureNode, std::ident < Cai SpanningTree dello Stato, std::less <State> >:: TransClosureNode, CAiSpanningTree < S tato, std::less <State> >:: TransClosureNode >, std::less < CAiSpanningTree < e Statistiche, std::less <State> >:: TransClosureNode >> ': identificatore troncato a '255' caratteri nelle informazioni di debug
Il codice:
   #pragma warning(disable:4786)				
disattiva gli avvisi che il file e riga il numero di elenchi. Ad esempio:
   C:\test\Text.cpp(25) : warning C4786:				
Status
Microsoft ha confermato che questo un bug nei prodotti sono elencati nella sezione "Si applica a".

È stato corretto in Microsoft Visual c ++ .NET.
Informazioni
Questo avviso può essere ignorato. Tuttavia, l'identificatore potrebbe non essere accessibili o visualizzabili nel debugger.

Codice di esempio

   /*   Compiler Options: /Zi   */    #include <stddef.h>   #include <new.h>   #pragma warning(disable:4786)   namespace std {      template <class T, class U>  struct ident {};      template <class T1, class T2> struct pair {};      template <class Arg1, class Arg2, class Result>         struct binary_function {};      template <class T>struct less : binary_function<T, T, bool> {};      template <class T, class Distance> struct bidirectional_iterator {};      template <class Key, class Value, class KeyOfValue, class Compare>        class rb_tree {          public:             typedef int size_type;             typedef int difference_type;             typedef void* link_type;             struct rb_tree_node {};             typedef Key key_type;             class iterator : public bidirectional_iterator<Value,                difference_type> {};             class const_iterator   : public                bidirectional_iterator<Value,difference_type> {                    protected:                    link_type node;                    const_iterator(link_type x) : node(x) {}             };             public:                size_type count(const key_type& x) const;             };        template <class Key, class Value, class KeyOfValue,                 class Compare>                 rb_tree<Key, Value, KeyOfValue, Compare>::size_type                 rb_tree<Key, Value, KeyOfValue, Compare>::                 count(const Key& k) const {                    size_type n = 0;                    return n;             };             template <class Key, class Compare>   class set {               typedef ::std::rb_tree<Key, Key,ident<Key, Key>, Compare>                 rep_type;          rep_type t;     };   }   template <class Node, class Compare>class CAiTransitiveClosure{   public:      typedef std::set<Node, Compare > NodeSet; NodeSet m_todo;   };   template <class Node, class Compare> class CAiSpanningTree {   public:      typedef std::set<Node, Compare > NodeSet;   protected:      typedef Node CAiSpanningTreeNode;      typedef NodeSet CAiSpanningTreeNodeSet;   private:      struct TransClosureNode {};      struct TransClosureGraph        : public CAiTransitiveClosure<TransClosureNode,   std::less<TransClosureNode> >       {};   public:      CAiSpanningTree(const Node& initialNode);      CAiSpanningTree(const NodeSet& initialNodes);   };   struct State { };   class CformSpanningTree:public CAiSpanningTree<State,std::less<State>>   {   public:       CFormSpanningTree( NodeSet initial)      : CAiSpanningTree<State, std::less<State> >(initial)      {}   };				

Avviso: questo articolo è stato tradotto automaticamente

Proprietà

ID articolo: 167355 - Ultima revisione: 02/22/2014 01:53:40 - Revisione: 3.0

Microsoft Visual C++ 5.0 Enterprise Edition, Microsoft Visual C++ 6.0 Enterprise Edition, Microsoft Visual C++ 5.0 Professional Edition, Microsoft Visual C++ 6.0 Professional Edition, Microsoft Visual C++, 32-bit Learning Edition 6.0

  • kbnosurvey kbarchive kbmt kbbug kbcode kbcompiler kbfix kbnoupdate KB167355 KbMtit
Feedback