最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于C++中常見編譯錯(cuò)誤的總結(jié)詳解

 更新時(shí)間:2013年05月16日 16:49:04   投稿:jingxian  
本篇文章是對(duì)C++中的常見編譯錯(cuò)誤進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下

在日常編碼過程中會(huì)遇見各種編譯錯(cuò)誤,本文對(duì)常見的編譯錯(cuò)誤進(jìn)行分析總結(jié)。(基本的編譯錯(cuò)誤在這里不列舉,后續(xù)后持續(xù)更新)
 
1、error c101008a解決方法
該錯(cuò)誤出現(xiàn)在項(xiàng)目升級(jí)過程中會(huì)出現(xiàn),比如說項(xiàng)目從vs2008升級(jí)到vs2010.
解決辦法:在項(xiàng)目上點(diǎn)右鍵,清理(Clean),重新編譯,問題解決
 
2、error C2252解決方法
該錯(cuò)誤主要在項(xiàng)目從vs2008升級(jí)到vs2010出先。
error C2252: an explicit instantiation of a template can only occur at namespace scope
解決方法:將特例話的模板移到類外面(It is saying that you cannot explicitly instantiate a template inside a function or a class.Move it to outside the function or class.)
 
3、error C2143:語法錯(cuò)誤:缺少“;”(在“*”的前面)
該錯(cuò)誤主要是某類型數(shù)據(jù)未include,可能是都文件拼寫錯(cuò)誤、或者頭文件名已經(jīng)更改、或是頭文件忘記“;”
解決辦法:檢查頭文件是否更名、是否忘記結(jié)束的“;”
 
4、error C1010:查找預(yù)編譯頭時(shí)遇到意外的文件結(jié)尾。是否忘記了向源中添加“#include "StdAfx.h”
解決辦法:在報(bào)錯(cuò)行所在的文件的最前面添加“#include "StdAfx.h”

5、error C1189:出現(xiàn)了WINDOWS.H already included. MFC apps must not #include <windows.h>的處理辦法。
解決辦法:把#include<afxwin.h>提到最前面去就可以編譯成功了。

6、error LNK2005: _DllMain@12 already defined in dllmain.obj
解決辦法:你只需要在工程設(shè)置里面把WIN32,NDEBUG,_WINDOWS,_MBCS,_USRDLL,MSGBOX_EXPORTS,_WINDLL,_AFXDLL
中的_USRDLL,刪除,就可以正確編譯了

7、R6010錯(cuò)誤,出現(xiàn)R6010錯(cuò)誤的原因很多
1、數(shù)據(jù)庫缺少一個(gè)視圖、
2、數(shù)據(jù)庫某個(gè)存儲(chǔ)過程名發(fā)生變化,也可能是參數(shù)個(gè)數(shù)發(fā)生變化。
3、exe和dll是否混用的不同版本的crt
4、內(nèi)存資源未釋放
5、輸出參數(shù)不正確
總之:windows將自身無法定位到的錯(cuò)誤類型都?xì)w結(jié)為R6010錯(cuò)誤

8、error C2361:initialization of
error C2361: initialization of 'iter2' is skipped by 'default' label
解決辦法:出現(xiàn)這個(gè)問題原因是因是switch沒有正常的初始化,只需要在iter2的位置控制其作用域即可,在這里添加{}就可以了。
案例分析:來自實(shí)際項(xiàng)目的一段代碼,簡(jiǎn)化形式如下:
 switch (t)
 {
 case 0:
  int a = 0;
  break;
 default:
  break;
 }
有什么問題嗎?似乎沒有。請(qǐng)用編譯器編譯一下……
嗯?!一個(gè)錯(cuò)誤“error C2361: initialization of 'a' is skipped by 'default' label”。這怎么可能?
幾番思琢,悟出解釋:
C++約定,在塊語句中,對(duì)象的作用域從對(duì)象的聲明語句開始直到塊語句的結(jié)束,也就是說default標(biāo)號(hào)后的語句是可以使用對(duì)象a的。
如果程序執(zhí)行時(shí)從switch處跳到default處,就會(huì)導(dǎo)致對(duì)象a沒有被正確地初始化。
確保對(duì)象的初始化可是C++的重要設(shè)計(jì)哲學(xué),所以編譯器會(huì)很嚴(yán)格地檢查這種違例情況,像上述的示例代碼中default語句后面并沒有使用a,
明白了原因,解決起來就很容易了。只要明確地限制對(duì)象a的作用域就行了。
 switch (t)
 {
 case 0:
  { //added for fix problem
  int a = 0;
  break;
  } //added for fix problem
 default:
  break;
 }
在switch...case...結(jié)構(gòu)中不能在case中定義新變量,for(int i = 0;...)
除非將定義新變量的case用塊{}包住,或者選擇將你的新變量在switch之前。

9、Link2019:unresolved external symbol 'symbol' referenced in function 'function'
函數(shù)只有申明,沒有實(shí)現(xiàn)時(shí),或是DLL中的函數(shù)沒有export

相關(guān)文章

  • C語言中動(dòng)態(tài)內(nèi)存管理初學(xué)者容易犯的6個(gè)錯(cuò)誤分享

    C語言中動(dòng)態(tài)內(nèi)存管理初學(xué)者容易犯的6個(gè)錯(cuò)誤分享

    本篇文章主要介紹了初學(xué)者使用C語言中動(dòng)態(tài)內(nèi)存管理的4個(gè)函數(shù)時(shí)最容易犯的6個(gè)錯(cuò)誤,以及如何避免這些錯(cuò)誤,文中的示例代碼講解詳細(xì),感興趣的可以了解一下
    2023-04-04
  • C++ Boost Utility超詳細(xì)講解

    C++ Boost Utility超詳細(xì)講解

    Boost是為C++語言標(biāo)準(zhǔn)庫提供擴(kuò)展的一些C++程序庫的總稱。Boost庫是一個(gè)可移植、提供源代碼的C++庫,作為標(biāo)準(zhǔn)庫的后備,是C++標(biāo)準(zhǔn)化進(jìn)程的開發(fā)引擎之一,是為C++語言標(biāo)準(zhǔn)庫提供擴(kuò)展的一些C++程序庫的總稱
    2022-12-12
  • 從匯編看c++中變量類型的深入分析

    從匯編看c++中變量類型的深入分析

    本篇文章是對(duì)c++中的變量類型進(jìn)行了詳細(xì)的分析介紹。需要的朋友參考下
    2013-05-05
  • C++代碼和可執(zhí)行程序在x86和arm上的區(qū)別介紹

    C++代碼和可執(zhí)行程序在x86和arm上的區(qū)別介紹

    這篇文章主要介紹了C++代碼和可執(zhí)行程序在x86和arm上的區(qū)別,X86和ARM是占據(jù)CPU市場(chǎng)的兩大處理器,各有優(yōu)劣,本文給大家詳細(xì)介紹了兩者的區(qū)別,需要的朋友可以參考下
    2022-07-07
  • 基于Matlab繪制小提琴圖的示例代碼

    基于Matlab繪制小提琴圖的示例代碼

    這篇文章主要介紹了如何利用Matlab實(shí)現(xiàn)小提琴圖的繪制,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Matlab有一定的幫助,需要的可以參考一下
    2022-05-05
  • C++對(duì)象內(nèi)存分布詳解(包括字節(jié)對(duì)齊和虛函數(shù)表)

    C++對(duì)象內(nèi)存分布詳解(包括字節(jié)對(duì)齊和虛函數(shù)表)

    下面小編就為大家?guī)硪黄狢++對(duì)象內(nèi)存分布詳解(包括字節(jié)對(duì)齊和虛函數(shù)表)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-12-12
  • 實(shí)例講解C++ 命名空間

    實(shí)例講解C++ 命名空間

    這篇文章主要介紹了C++ 命名空間的的相關(guān)資料,文中示例代碼非常詳細(xì),供大家參考和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • C++ static的使用方法及不同含義講解

    C++ static的使用方法及不同含義講解

    在 C++ 里,static 是一個(gè)用途廣泛的關(guān)鍵字,在不同場(chǎng)景下有不同含義,下面通過實(shí)例代碼介紹C++ static的使用方法及不同含義講解,感興趣的朋友一起看看吧
    2025-04-04
  • 手把手教你如何優(yōu)化C語言程序

    手把手教你如何優(yōu)化C語言程序

    程序進(jìn)行優(yōu)化,通常是指優(yōu)化程序代碼或程序執(zhí)行速度。優(yōu)化代碼和優(yōu)化速度實(shí)際上是一個(gè)予盾的統(tǒng)一,一般是優(yōu)化了代碼的尺寸,就會(huì)帶來執(zhí)行時(shí)間的增加,如果優(yōu)化了程序的執(zhí)行速度,通常會(huì)帶來代碼增加的副作用,很難魚與熊掌兼得,只能在設(shè)計(jì)時(shí)掌握一個(gè)平衡點(diǎn)
    2013-07-07
  • C++ Qt實(shí)現(xiàn)瀏覽器網(wǎng)頁內(nèi)嵌的音視頻播放器

    C++ Qt實(shí)現(xiàn)瀏覽器網(wǎng)頁內(nèi)嵌的音視頻播放器

    這篇文章主要為大家詳細(xì)介紹了如何利用C++ Qt實(shí)現(xiàn)瀏覽器網(wǎng)頁內(nèi)嵌的音視頻播放器,并支持軟硬解碼,支持音頻,支持錄像截圖,支持多路播放等,感興趣的可以了解下
    2024-01-01

最新評(píng)論

韩城市| 从化市| 来宾市| 嵩明县| 宁波市| 滦南县| 舒城县| 宁都县| 玉山县| 枣庄市| 安溪县| 新民市| 仁怀市| 南丹县| 阜阳市| 行唐县| 林芝县| 都昌县| 灵丘县| 万州区| 富阳市| 积石山| 临江市| 什邡市| 牙克石市| 永泰县| 临夏县| 陆丰市| 香河县| 长汀县| 黎平县| 彩票| 陇南市| 南投县| 阜平县| 临江市| 泉州市| 衡阳县| 江山市| 盘山县| 贡山|