定義2個有關聯的類時,產生的使用了未定義類型的錯誤
定義了A類的時候,需要定義一個B類來完善A的功能,A類當中有 返回類型為B的函數 ,定義A之前,先聲明了B,且B作為A的友元,需要訪問A的私有成員。
eg:
class B;
class A
{
public:
friend class B;
A();
B fun1() {return B(*this)} // 返回一個B類型的對象
private:
string s;
}
class B
{
public:
B (A&);
}
// B A::fun1() {return B(*this)} 正確的定義
因為B的定義在A的後面,所以在具體定義fun1這個函數時,B只有聲明而沒有具體的定義。導致編譯的時候會報錯。將fun1放在B的定義之後定義就可以了,而只在A當中先聲明。
註:類沒有定義之前但是有聲明的時候,可以聲明指向它的指針。而不允許對未定義的類型的引用。
定義2個有關聯的類時,產生的使用了未定義類型的錯誤
相關推薦
定義2個有關聯的類時,產生的使用了未定義類型的錯誤
return 一個 class bsp 功能 私有 報錯 ring 編譯 定義了A類的時候,需要定義一個B類來完善A的功能,A類當中有 返回類型為B的函數 ,定義A之前,先聲明了B,且B作為A的友元,需要訪問A的私有成員。 eg: class B; class A { pu
在定義類時,何時需要重寫Object類中equals()方法?
在比較兩個物件時可以使用==和 equals()。==用於比較兩個物件的引用地址是否相等,而equals()方法主要用於比較兩個物件的內容是否相等。和equals()的差別請參見“和equals()有什麼區別?”的解答。 在 Object 中已定義了 equals()方法,但是該方法直接採用
山科java實驗3-2 在安排教師監考時,需要從一組教師中隨機選取n個教師參加監考。要求實現一個類RandomTeacher的靜態方法public static String[] getRandomT
在安排教師監考時,需要從一組教師中隨機選取n個教師參加監考。要求實現一個類RandomTeacher的靜態方法public static String[] getRandomTeachers(String[] teachers, int n),能夠從teachers中隨機選擇
c++使用thread類時編譯出錯,對‘pthread_create’未定義的引用
cti undefine defined 系統默認 func ext reat lec status /tmp/ccM2tvqF.o: In function `main':thread_c.c:(.text+0x1f): undefined reference t
python 定義類時,內部方法的互相呼叫
每次呼叫內部的方法時,方法前面加 self. 舉例: 例子參考百度知道里面的回答 class MyClass: def __init__(self): pass def func1(self): # do something
Mysql 多個表中關聯 ID 時,同時插入多表
用到了 last_insert_id() 插入主表內容 insert into cms_document(title,category_id,model_id,description,view,cr
fastjson parse類中有內部類時,且內部類巢狀內部類報錯
com.alibaba.fastjson.JSONException: create instance error, class com.XXXX.model.ClassA$ClassInnerBat com.alibaba.fastjson.parser.deserial
Mybatis Plus 2 升到 Mybatis Plus 3 時,實體繼承的Model類的的相關問題
一、更新依賴關係 當你把依賴從 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId>
List、Map、Set三個介面存取元素時,各有什麼特點?
List以特定索引來存取元素,可以有重複元素。Set不能存放重複元素(用物件的equals()方法來區分元素是否重複)。Map儲存鍵值對(key-value pair)對映,對映關係可以是一對一或多對
自己試驗在spring的環繞通知裡獲取目標物件的類名和目標方法的引數類名,用於根據自定義註解判斷訪問許可權,有沒有更好的辦法,高手指點一下
public Object doInBusiness(ProceedingJoinPoint pjp) throws Throwable{ Object[] args = pjp.getArgs(); Class[] argsClass = new Class[ar
3. 定義10個位元組的鍵盤緩衝區,然後鍵盤輸入字元填滿該緩衝區,做如下工作: (1)分別將輸入鍵盤緩衝區的字元按數字,小寫字母,大寫字母,其他字元進行計數; 分別將這些計數值顯示出來。 (2)分別將這
mov ah,9 int 21h mov ah,10 lea dx,buf int 21h lea dx,srlf mov ah,9 int 21h mov bx,-1 mov cx,10 lopt: add bx,1 mov al,buf[b
當定義基類和子類拷貝建構函式時,需要顯示呼叫基類的拷貝建構函式才行
寫這個是因為有人提問,正好也就試了。 當基類中“顯示定義了拷貝建構函式和賦值操作符時”當派生類中“顯示定義了拷貝建構函式和賦值操作符時”如果派生類中的拷貝和賦值建構函式中沒有“顯示指定基類的拷貝和賦值建構函式”,即:派生類只是把自己的成員進行了賦值 這時需要手動呼叫基類的
appium+python 存在多個類時,不用每次都初始化解決辦法
系統 block iss 基於 bdr 每次 warnings 沒有 cal appium+python寫自動化測試用例時,為了代碼的可維護性,分成不同的類是很常見的辦法, 但是在運行時,每一個類都要初始化一次,即每次都會重啟應用,這很麻煩,通過__new__可進行多個類
多態父類引用指向子類對象時,如何調用子類的獨有方法?
引用 父類引用 post 父類 多態 pos int ins blog 父類:A 子類:Person A a1 = new Person(); if(a1 instanceof Person) { System.out.println("true");
eclipse、myeclipse寫類時,自動生成註釋
圖片 version inf pre nbsp tags bubuko 內容 types 在類的上邊/**+enter自動生成註釋。 設置方法:Window--Prefences--Java--Code Style--Code Templates--Comments-
mybatis 關聯查詢時,從表只返回第一條記錄解決辦法
bean mod 第一條 solid ews 解決辦法 prop ica 元素 如果兩表聯查,主表和明細表的主鍵都是id的話,明細表的多條只能查詢出來第一條。 造成以上情況可能的
WebStrom配置多個項目的Dweployment時,設置默認的啟動配置
有時 style -a 技術分享 p s center mage 界面 配置 有時候,我們在WebStrom中打開多個項目,但是每個項目可能的Deployment的配置不同,所以每次在項目中時,可能打開的網頁並不對。所以需要設置默認的啟動的Deployment。下面的
周末炎熱不出門,難道宅家吃西瓜?精選助手為您帶來2個最新上線訂閱專欄,周末繼續漲知識
linux 高級 養成 web rip 設計 研究 高並發 javascrip 推薦專欄 一 訂閱專欄:JavaScript全棧工程師養成記 專欄作者:範濟穎(邊城),從事軟件開發 20 年,在軟件分析、設計、架構、開發及軟件開發技術研究和培訓等方面有著非常豐富的經驗,
中國最牛的7家人工智能企業,2個幾乎沒聽過,1個由微軟投資
androi 集成 高通 int 電子商務 社交網絡 平臺服 發展 研究院 中國最牛的7家人工智能企業,2個幾乎沒聽過,1個由微軟投資 註:本文非官方發布,部分數據不準確,僅供參考! 數月前,有關研究院推出AI First2017-2018中國人工智能先行企業榜在北京揭曉。
近期處理多個Highcharts圖標時,碰到重復操作,所以編寫了一個流程控制器
null sql 控制 lin end created 格式 har 合並數組 HTML選擇頁面 第一部分:<?php /** * Created by PhpStorm. * User: Administrator * Date: 2018/9/8 * Tim