Düzeltme: Hatası alıyorsunuz, ileti bir "ad kullanılarak std" yönergesini arkadaşınızın işletmen önce yer alır

Makale çevirileri Makale çevirileri
Makale numarası: 192539 - Bu makalenin geçerli olduğu ürünleri görün.
Hepsini aç | Hepsini kapa

Bu Sayfada

Belirtiler

Açtığınızda bir "ad kullanılarak std" yönergesini, bir arkadaşınızın işletmen bildiriminden önce yerleştirilir, bu iki aşağıdaki hatalardan birini de alabilirsiniz:

Durum 1
<a1>hata</a1> C2248: [üye değişken adı]: erişim özel üye [sınıf adı] sınıfta bildirilen edemiyor [dosya adı] (sayı satır): [üye değişkeni] bildirimi Bkz:
Durum 2
[dosya adı](sayı satır): önemli hata C1001: IÇ DERLEYICI HATASı

(derleyici dosyası 'msc1.cpp' 1786 satır)
Visual C++ için Yardım menüsünde Teknik Destek'e komut seçin veya daha fazla bilgi için teknik destek Yardım dosyasını açın.

CL.exe yürütülürken bir hata oluştu.

Neden

Standart ad başlanan, arkadaşınızın işletmen çözümlemesi ön uç derleyici başarısız olur.

Çözüm

Desteklenen bir düzeltme Microsoft'tan edinilebilir, ancak yalnızca bu makalede anlatılan sorunu düzeltmesi amaçlanmıştır. Düzeltmeyi yalnızca bu sorunla karşılaşan sistemlere uygulayın. Bu düzeltmeye ek sınama uygulanabilir. Bu nedenle, sorundan ciddi olarak bu sorundan ciddi bir şekilde etkilenmiyorsanız bu düzeltmeyi içeren Visual Studio 6.0 için sonraki Service Pack 3 için beklemeniz önerilir.

Bu sorunu hemen çözmek için, düzeltmeyi edinmek üzere Microsoft Ürün Destek Hizmetleri'ne başvurun. Microsoft Ürün Destek Hizmetleri'nin telefon numaralarının tam listesi ve destek ücretleriyle ilgili bilgi için, aşağıdaki Microsoft Web sitesini ziyaret edin:
http://support.microsoft.com/contactus/?ws=support
Not Özel durumlarda, Microsoft Destek Uzmanı özel bir güncelleştirmenin sorununuzu çözümleyeceğini belirlerse, destek aramaları için normalde uygulanan ücretler iptal edilebilir. Ek destek sorularına ve söz konusu güncelleştirme için geçerli olmayan sorunlara normal destek ücretleri uygulanır.Bu düzeltmenin İngilizce sürümünde aşağıdaki dosya öznitelikleri veya üstü bulunur:
   Date      Time      Size        File Name  Version#      Platform
   -----------------------------------------------------------------

   9/15/98   08:26p    1,183,795   C1xx.dll   12.00.8257.0  (x86)
				

Pratik Çözüm

Bu soruna geçici bir çözüm bulmak için aşağıdakilerden birini yapın:
  • Taşıma "ad alanı'nı kullanarak standart" yönergesini sonra arkadaşınızı işleç bildirimi.
  • Kullanmaktan kaç?n?n "ad alanı'nı kullanarak standart" yönergesi.
  • Ileri bir işleç ve/veya sınıf bildirin.

Durum

Microsoft bu durumun, "Geçerli Olduğu Ürünler" bölümünde listelenen Microsoft ürünlerinde bir hata olduğunu onaylamıştır.Bu hata, Visual Studio 6.0 Service Pack 3'te giderilmiştir.

Visual Studio hizmet paketleri hakkında daha fazla bilgi için Microsoft Knowledge Base'deki makaleleri görüntülemek üzere aşağıdaki makale numaralarını tıklatın:
194022Visual Studio 6.0 hizmet paketleri, ne, nerede, neden (Bu bağlantı, bir kısmı veya tamamı İngilizce olan içeriğe işaret edebilir.)
194295Visual Studio hizmet paketinin yüklü olmadığını belirleme

Daha fazla bilgi

Durum 1 C2248 hata Test1.cpp reproduces

   // test1.cpp
   // Compiler options needed: cl /c /GX
   #include <iostream>

   using namespace std;

   #ifdef WORKAROUND
   class CMyClass;
   ostream& operator <<(ostream &, const CMyClass &);
   #endif // WORKAROUND

   class CMyClass
   {
   public:

     friend ostream& operator <<(ostream &, const CMyClass &);
     // An alternative workaround is to define the operator in the
     // class declaration. In this case it is not necessary to forward
     // declare the class and friend function.

   private:

      int value;
   };

   ostream& operator <<(ostream& out, const CMyClass& m)
   {

      int i = m.value;  // C2248 Error
      return out;
   }

   void main()
   { }
				

Durum 2 C1001 hata Test2.cpp reproduces

   // test2.cpp
   // Compiler options needed: cl /c /GX
   #include <iostream>

   using namespace std;

   #ifdef WORKAROUND
   int operator+(int, const class &);
   #endif // WORKAROUND

   class CMyClass
   {
   public:

     friend int operator+(int, const CMyClass &);  // C1001 Error.

   };

   void main()
   { }
				

Özellikler

Makale numarası: 192539 - Last Review: 7 Ekim 2005 Cuma - Gözden geçirme: 3.2
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Visual C++ 6.0 Enterprise Edition
  • Microsoft Visual C++ 6.0 Professional Edition
  • Microsoft Visual C++, 32-bit Learning Edition 6.0
Anahtar Kelimeler: 
kberrmsg kbbug kbfix kblangcpp kbqfe kbvs600sp3fix kbhotfixserver kbmt KB192539 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:192539

Geri Bildirim Ver

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com