
class Treasury{public: Treasury(SBB_instrument_fIElds bond); Treasury(); double yIEldrate; short periods;};class TradingBook{public: TradingBook(const char* yIEldCurvePath,const char* bondpath); double getBenchmarkYIEld(short bPeriods) const; voID quickSort(int arr[],int left,int right,double index[]); BaseBond** TradingBook; int treasuryCount; Treasury* yIEldCurve; int bondCount; voID runAnalytics(int i);}; 这是我的主要代码,我收到错误:
TradingBook::TradingBook(const char* yIEldCurvePath,const char* bondpath){ //Loading YIEld Curve // ... yIEldCurve = new Treasury[treasuryCount]; int periods[treasuryCount]; double yIElds[treasuryCount]; for (int i=0; i < treasuryCount; i++) { yIEldCurve[i] = new Treasury(treasurIEs[i]); //^^^^^^^^^^^^^^^^liNE WITH ERROR^^^^^^^^^^^^^^ }} 我收到错误:
No match for
'operator='on the line'yIEldCurve[i] = new Treasury(treasurIEs[i]);'
有什么建议?
解决方法 这是因为yIEldCurve [i]属于财政部,而新财政部(国债[i]);是指向财政部对象的指针.所以你的类型不匹配.尝试更改此行:
yIEldCurve[i] = new Treasury(treasurIEs[i]);
对此:
yIEldCurve[i] = Treasury(treasurIEs[i]);总结
以上是内存溢出为你收集整理的C错误:’operator =’不匹配全部内容,希望文章能够帮你解决C错误:’operator =’不匹配所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)