คำถามติดแท็ก visual-c++

Microsoft Visual C ++ เป็นคอมไพเลอร์ C, C ++ และ C ++ / CLI สำหรับ Windows เวอร์ชันล่าสุดของคอมไพเลอร์คือ Visual C ++ 2019 คอมไพเลอร์รองรับภาษาต่อไปนี้: C (รองรับ C90 และ C99 และ C11 ส่วนใหญ่ของมาตรฐาน ISO C ++ ใน Visual Studio 2019); C ++ (รองรับฟีเจอร์ C ++ 11, C ++ 14 และ C ++ 17 ส่วนใหญ่และฟีเจอร์ C ++ 20 บางส่วนใน Visual Studio 2019) C ++ / CLI (ให้การทำงานร่วมกันกับภาษา. NET เช่น C #)

4
“ stdafx.h” ใช้สำหรับอะไรใน Visual Studio
ไฟล์ที่ชื่อstdafx.hจะถูกสร้างขึ้นโดยอัตโนมัติเมื่อฉันเริ่มโครงการใน Visual Studio 2010 ฉันต้องสร้างไลบรารี C ++ ข้ามแพลตฟอร์มดังนั้นฉันจึงไม่ / ไม่สามารถใช้ไฟล์ส่วนหัวนี้ได้ อะไรคือสิ่งที่stdafx.hใช้? ตกลงไหมที่ฉันจะลบไฟล์ส่วนหัวนี้?

30
เหตุใดโปรแกรมนี้จึงถูกปฏิเสธโดยคอมไพเลอร์ C ++ สามตัว
ล็อคแล้ว คำถามและคำตอบของคำถามนี้ถูกล็อคเนื่องจากคำถามอยู่นอกหัวข้อ แต่มีความสำคัญทางประวัติศาสตร์ ขณะนี้ไม่ยอมรับคำตอบหรือการโต้ตอบใหม่ ฉันมีปัญหาในการรวบรวมโปรแกรม C ++ ที่ฉันเขียน โปรแกรมนี้ง่ายมากและเป็นความรู้ที่ดีที่สุดของฉันสอดคล้องกับกฎทั้งหมดที่กำหนดไว้ในมาตรฐาน C ++ ฉันได้อ่านทั้งหมดของ ISO / IEC 14882: 2003 สองครั้งเพื่อให้แน่ใจ โปรแกรมมีดังนี้: นี่คือผลลัพธ์ที่ฉันได้รับเมื่อพยายามคอมไพล์โปรแกรมนี้ด้วย Visual C ++ 2010: c:\dev>cl /nologo helloworld.png cl : Command line warning D9024 : unrecognized source file type 'helloworld.png', object file assumed helloworld.png : fatal error LNK1107: invalid or corrupt …

29
จำเป็นต้องใช้ Microsoft Visual C ++ 14.0 (ไม่พบ vcvarsall.bat)
ฉันได้ติดตั้ง Python 3.5 และในขณะที่ใช้งาน pip install mysql-python มันทำให้ฉันมีข้อผิดพลาดดังต่อไปนี้ error: Microsoft Visual C++ 14.0 is required (Unable to find vcvarsall.bat) ฉันได้เพิ่มบรรทัดต่อไปนี้ในเส้นทางของฉัน C:\Program Files\Python 3.5\Scripts\; C:\Program Files\Python 3.5\; C:\Windows\System32; C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC; C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC ฉันมีการติดตั้ง 64 บิต win 7 ในพีซีของฉัน pipสิ่งที่อาจจะแก้ปัญหาสำหรับการบรรเทาข้อผิดพลาดนี้และติดตั้งโมดูลได้อย่างถูกต้องผ่าน

5
Visual Studio 2010 - โครงการ C ++ - ลบไฟล์ * .sdf
ฉันต้องการทราบว่าฉันสามารถลบไฟล์ sdf ที่เก็บข้อมูลสำหรับ Intellisense ของ Visual Studios ได้อย่างปลอดภัยหรือไม่ - จะถูกสร้างขึ้นใหม่ในครั้งต่อไปที่ฉันเปิดโซลูชันหรือไม่ ฉันจะสูญเสียสิ่งใดโดยทำเช่นนี้หรือไม่? เป็นไปได้ไหมที่จะทำลายวิธีนี้ แรงจูงใจในการทำเช่นนั้นก็คือการจัดเก็บโครงการขนาดเล็กหลายแห่ง - ไฟล์ sdf แต่ละไฟล์และทุกไฟล์มีขนาดไม่เกิน 20Mb ซึ่งเพิ่มขึ้นเป็นจำนวนเนื้อที่ดิสก์ที่เห็นได้ชัดเจน

3
ใน Visual Studio C ++ การจัดสรรหน่วยความจำคืออะไร?
ใน Visual Studio เราทุกคนมี "baadf00d" ได้เห็น "CC" และ "CD" เมื่อตรวจสอบตัวแปรในดีบักเกอร์ใน C ++ ในช่วงเวลาทำงาน จากสิ่งที่ฉันเข้าใจ "CC" อยู่ในโหมด DEBUG เท่านั้นเพื่อระบุว่าเมื่อใดที่หน่วยความจำใหม่ () หรือจัดสรร () และหน่วยเดียว ในขณะที่ "CD" หมายถึงหน่วยความจำที่ลบหรือฟรี ฉันเห็น "baadf00d" เฉพาะในรุ่น RELEASE (แต่ฉันอาจผิด) นาน ๆ ครั้งเราจะเข้าสู่สถานการณ์ของการแก้ไขการรั่วไหลของหน่วยความจำบัฟเฟอร์ล้นและอื่น ๆ และข้อมูลประเภทนี้มีประโยชน์ ใครบางคนจะใจดีพอที่จะชี้ให้เห็นเมื่อใดและในโหมดใดหน่วยความจำถูกตั้งค่าเป็นรูปแบบไบต์ที่รู้จักสำหรับการแก้ไขจุดบกพร่อง?

22
วิธีทำให้หน้าต่างคอนโซลเปิดใน Visual C ++
ฉันเริ่มต้นใน Visual C ++ และฉันต้องการทราบวิธีการเก็บหน้าต่างคอนโซล เช่นนี้จะเป็นแอปพลิเคชัน "สวัสดีโลก" โดยทั่วไป: int _tmain(int argc, _TCHAR* argv[]) { cout << "Hello World"; return 0; } เส้นที่ฉันขาดหายไปคืออะไร?

25
ข้อผิดพลาดร้ายแรง LNK1112: โมดูลเครื่องประเภท 'x64' ขัดแย้งกับประเภทเครื่องเป้าหมาย 'X86'
ฉันใช้ CUDA (VC ++, Visual studio 2008sp1) เพื่อดีบักโปรแกรม FEM โปรแกรมสามารถทำงานบนแพลตฟอร์ม Win32 เท่านั้นเนื่องจากความไม่เพียงพอของ cuda ฉันคิดว่าไฟล์ไลบรารีที่ลิงก์นั้นถูกคอมไพล์บนแพลตฟอร์ม x86 แต่เมื่อฉันรวบรวมมันฉันจะได้รับข้อความแสดงข้อผิดพลาด "ข้อผิดพลาดร้ายแรง LNK1112: ข้อผิดพลาดร้ายแรงของเครื่องโมดูล 'x64' กับเครื่องเป้าหมายชนิด 'X86'" ฉันพยายามแปลงแพลตฟอร์มเป็น x64 แต่มันไม่ทำงาน โปรดบอกฉัน: "โมดูลประเภทเครื่อง" คืออะไรและ "ประเภทเครื่องเป้าหมาย" คืออะไร? ฉันจะเอาชนะมันได้อย่างไร

25
สัญลักษณ์ภายนอกที่ไม่ได้รับการแก้ไขในไฟล์วัตถุ
ระหว่างการเข้ารหัสใน Visual Studio ฉันพบข้อผิดพลาดของสัญลักษณ์ภายนอกที่ไม่ได้รับการแก้ไขและฉันไม่รู้ว่าจะทำอย่างไร ฉันไม่รู้ว่ามีอะไรผิดปกติ คุณช่วยถอดรหัสฉันหน่อยได้ไหม ฉันควรหาข้อผิดพลาดประเภทใด 1>Form.obj : error LNK2019: unresolved external symbol "public: class Field * __thiscall Field::addField(class Field *)" (?addField@Field@@QAEPAV1@PAV1@@Z) referenced in function "public: void __thiscall Form::parse(class std::basic_stringstream<char,struct std::char_traits<char>,class std::allocator<char> > &)" (?parse@Form@@QAEXAAV?$basic_stringstream@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) 1>Form.obj : error LNK2019: unresolved external symbol "public: virtual void __thiscall Field::parse(class std::basic_stringstream<char,struct std::char_traits<char>,class …

8
ไฟล์ประเภท Visual C ++ ใดที่ควรจะใช้ในการควบคุมเวอร์ชัน
Visual Studio \ Visual C ++ ไฟล์ประเภทใดที่ควรถูกกำหนดให้ควบคุมเวอร์ชัน? ในโครงการของฉันฉันมีไฟล์ประเภทต่อไปนี้: aps cpp exe filters h ico idb ipch lastbuildstate lib log manifest obj pch pdb rc rc2 res sdf sln suo tlog txt user vcxproj ฉันขอขอบคุณเหตุผลสั้น ๆ สำหรับแต่ละข้อ หากมีข้อโต้แย้งใด ๆ โปรดทราบ ฉันตั้งใจรวมถึงประเภทของไฟล์ที่เล็กน้อยเพื่อความสมบูรณ์ แก้ไข ในอีกด้านหนึ่งฉันต้องการแพลตฟอร์มอิสระในอนาคต ในอนาคตอันใกล้ฉันต้องการทำงานกับสมาชิกในทีมด้วยการตั้งค่าที่คล้ายกัน ความเข้ากันได้ของโฟลเดอร์ระหว่างการตั้งค่าเป็นตัวเลือกอย่างแน่นอนดังนั้นไฟล์การกำหนดค่าพา ธ อาจเก็บไว้ได้ถ้ามันทำให้เวิร์กโฟลว์ง่ายขึ้น ฉันขอขอบคุณคำอธิบายว่ามีอะไรเกิดขึ้นอีกครั้ง


2
#defining WIN32_LEAN_AND_MEAN ยกเว้นอะไรกันแน่
ฉันพบคำอธิบายการกำหนด WIN32_LEAN_AND_MEAN "ลดขนาดของไฟล์ส่วนหัวของ Win32 โดยไม่รวม API ที่ใช้งานน้อย" ที่อื่นฉันอ่านว่ามันเร่งกระบวนการสร้าง ดังนั้น WIN32_LEAN_AND_MEAN ยกเว้นอะไรกันแน่ ฉันควรใส่ใจกับคำสั่งของโปรเซสเซอร์ล่วงหน้าหรือไม่ มันเร็วขึ้นในกระบวนการสร้างหรือไม่? ฉันยังได้เห็นคำสั่ง preprocessor ในโครงการตั้งชื่อบางอย่างตามแนวของลีนเสริม นี่เป็นคาถา preprocessor ลึกลับอื่นที่ฉันควรรู้เกี่ยวกับ?

7
เชื่อมโยงกับตัวแปร Visual Studio $ ทั้งหมด
ฉันกำลังดู$(Configuration)และ$(ProjectDir)อื่น ๆ ใน Visual Studio 2008 สำหรับกิจกรรม Prebuild มีลิงค์ไปยังตัวแปรทั้งหมดเหล่านี้พร้อมคำจำกัดความสำหรับแต่ละตัวแปรหรือไม่?

13
ข้อผิดพลาด LNK2019: สัญลักษณ์ภายนอกที่ไม่ได้รับการแก้ไข _WinMain @ 16 อ้างอิงในฟังก์ชัน ___tmainCRTStartup
ขณะที่ฉันกำลังเรียกใช้รหัสอย่างง่ายด้านล่างฉันมีข้อผิดพลาดสองประการดังนี้: #include <iostream> #include <string> using namespace::std; template <class Type> class Stack { public: Stack (int max):stack(new Type[max]), top(-1), maxsize(max){} ~Stack (void) {delete []stack;} void Push (Type &val); void Pop (void) {if (top>=0) --top;} Type& Top (void) {return stack[top];} //friend ostream& operator<< (ostream&, Stack&); private: Type *stack; int top; const …

8
ไม่สามารถเปิดไฟล์รวม 'afxres.h' ใน VC2010 Express
ฉันพยายามรวบรวมโปรเจ็กต์เก่าโดยใช้ VS express 2010 แต่ฉันได้รับข้อผิดพลาดนี้: ข้อผิดพลาดร้ายแรง RC1015: ไม่สามารถเปิดรวมไฟล์ 'afxres.h' จากรหัสนี้ ///////////////////////////////////////////////////////////////////////////// // // Generated from the TEXTINCLUDE 2 resource. // #include "afxres.h" ฉันติดตั้ง Windows SDK แล้ว แต่ไม่ประสบความสำเร็จ ขอบคุณ!

30
จะตรวจสอบได้อย่างไรว่าสตริงเป็นตัวเลขที่มี C ++ หรือไม่?
ฉันมีปัญหาเล็กน้อยในการพยายามเขียนฟังก์ชันที่ตรวจสอบว่าสตริงเป็นตัวเลขหรือไม่ สำหรับเกมที่ฉันกำลังเขียนฉันเพียงแค่ต้องตรวจสอบว่าบรรทัดจากไฟล์ที่ฉันกำลังอ่านเป็นตัวเลขหรือไม่ (ฉันจะรู้ว่ามันเป็นพารามิเตอร์ด้วยวิธีนี้หรือไม่) ฉันเขียนฟังก์ชันด้านล่างซึ่งฉันเชื่อว่าทำงานได้อย่างราบรื่น (หรือฉันแก้ไขโดยไม่ตั้งใจเพื่อหยุดมันหรือฉันเป็นโรคจิตเภทหรือ Windows เป็นโรคจิตเภท): bool isParam (string line) { if (isdigit(atoi(line.c_str()))) return true; return false; }
136 c++  visual-c++ 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.