【Debug】— C++ 表达式必须包含类类型
生活随笔
收集整理的這篇文章主要介紹了
【Debug】— C++ 表达式必须包含类类型
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
錯誤一般發生在使用.進行訪問時,原因可能在于:
- 你以為你定義了一個類對象,其實你是聲明了一個函數,在編譯器看來;
對類對象指針采用.的方式訪問其成員變量;
- 也包括基本類型變量,錯誤地使用.
1. 情況 1
class Test{ public:Test(){ }void foo(){ } };int main(int, char**){Test t(); // 編譯器會將 t 視為一個函數;t.foo(); // 出錯,表達式必須包含類類型return 0; }修改方法:
// 對象的定義,修改為: Test t;當構造函數中存在一些參數時:
class Test{ public:Test(int i) {} // 但要避免默認單參構造函數:Test(int i = 0) {}... }int main(){Test t(5);... }2. 情況 2
Test* t = new Test(5); // 錯誤訪問成員函數的形式: t.foo(); // 正確寫法: t->foo();轉載于:https://www.cnblogs.com/mtcnn/p/9423796.html
總結
以上是生活随笔為你收集整理的【Debug】— C++ 表达式必须包含类类型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python安装各种插件
- 下一篇: [MVC学习笔记]5.使用Control