C4430錯誤,“C4430 缺少型別說明符
阿新 • • 發佈:2019-02-20
今天在學習函式,編寫練習題程式碼時,出現上述錯誤資訊,程式碼如下:
#include "pch.h" #include <iostream> #include<string> void replace(int &i, int &j); void replaceP(int *i, int *j); bool CheckL(const string &s); using namespace std; int main() { std::cout << "Hello World!\n"; int i = 1, j = 5; replace(i, j); //引用 replaceP(&i, &j); //指標 bool flag=CheckL("hahha"); cout << i << j<<"\n"<<flag; } //使用引用 void replace(int &i,int &j) { int m = i; i = j; j = m; } //使用指標 void replaceP(int *i, int *j) { int m = *j; *j = *i; *i = m; } //檢查string物件中是否含有大寫字母 bool CheckL(const string &s) { for (auto val : s) { if (isupper(val)) { return true; } } return false; }
試了很多,最後才發現,using namespace std; 這個宣告應該放在函式宣告的前面,或者在宣告中使用string的地方,寫成std::string這樣才能成功編譯。個人猜想應該是由於沒有找到string類報錯。