ODB 之 persist compile error
今天遇到一個(gè)很詭異的問(wèn)題,報(bào)錯(cuò)如下:
C:\DiskD\Projects.plus\Kolo\PatientManagement\Common\odb/database.txx(38): error C2664: 'void odb::access::object_traits_impl<ExaminationK,odb::id_sqlite>::persist(odb::database &,odb::access::object_traits<ExaminationK>::object_type &)': cannot convert argument 2 from 'T' to 'odb::access::object_traits<ExaminationK>::object_type &'
2> ? ? ? ?with
2> ? ? ? ?[
2> ? ? ? ? ? ?T=Examination
2> ? ? ? ?]
?
C2664: 為類型轉(zhuǎn)換問(wèn)題
翻了幾遍 example,沒(méi)有發(fā)現(xiàn)問(wèn)題所在
Examination 類使用了#pragma db id 的ODB pragma language
注意:此處的id_ 值是有ODB組件管理自動(dòng)生成的,所以Examination對(duì)象會(huì)被改變
故,不能將persist的參數(shù)設(shè)定為const類型,const 導(dǎo)致類型轉(zhuǎn)換失敗。
總結(jié)
以上是生活随笔為你收集整理的ODB 之 persist compile error的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 使用油猴脚本看视频的过程
- 下一篇: c语言编程基础课件,C语言编程基础课件.