CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

CByteArray这个类该怎么用??

楼主Joy58061678(杭州浪子)2006-03-03 12:05:22 在 VC/MFC / 基础类 提问

再串口通信中经常用到CByteArray这个类,怎么使用它啊??  
  问题:  
  我自己写了编码解码的方法  
  BOOL   blCodingAndDecode(CByteArray   btBuffer,   BOOL   bValue);  
  但在调用的时候出现了问题,  
   
  BYTE   bt[256];  
  CByteArray   OutBuf,lp;  
  bt[0]   =   0xc0;  
  bt[1]   =   0x01;  
  bt[2]   =   0x00;  
  bt[3]   =   0x00;  
  bt[4]   =   0x00;  
  bt[5]   =   0x00;  
  bt[6]   =   0x00;  
  bt[7]   =   0x01;  
  bt[8]   =   0x02;  
  bt[9]   =   0x00;  
  bt[10]   =   0x04;  
  bt[11]   =   0xc0;  
  OutBuf.SetSize(12);  
  COleVariant   colevar;  
  for(int   i   =0;   i   <12;   i++){  
  OutBuf[i]   =   bt[i];  
  }  
   
                    //在发送串口字符串之前对字符串进行编码  
                    blCodingAndDecode(   OutBuf,   TRUE   );                         //<----出错的地方  
  colevar =   OutBuf;    
  m_ctrlComm.SetOutput(colevar);  
   
   
  D:\VC\testComm\testCommDlg.cpp(289)   :   error   C2664:   'blCodingAndDecode'   :   cannot   convert   parameter   1   from   'class   CByteArray'   to   'class   CByteArray'  
                  No   copy   constructor   available   for   class   'CByteArray'  
   
  这是怎么回事?  
  问题点数:40、回复次数:8Top

1 楼newcore(to be or not to be, it's a question.)回复于 2006-03-03 12:54:46 得分 0

CByteArray没有实现拷贝构造函数,不能这样用...  
   
  修改:  
  BOOL   blCodingAndDecode(CByteArray   btBuffer,   BOOL   bValue);为:  
   
  BOOL   blCodingAndDecode(CByteArray   *btBuffer,   BOOL   bValue);  
  试试  
  Top

2 楼vcmute(BCare4 H1Rest Good9!)回复于 2006-03-05 10:14:50 得分 0

BOOL   blCodingAndDecode(CByteArray   &btBuffer,   BOOL   bValue)Top

3 楼Joy58061678(杭州浪子)回复于 2006-03-08 16:13:42 得分 0

BOOL   blCodingAndDecode(CByteArray   &btBuffer,   BOOL   bValue)  
  为什么这样加了个取地址符号就可以了呢?Top

4 楼Mackz(在相互)回复于 2006-03-08 20:14:39 得分 0

这叫引用。没学过C++?Top

5 楼xuzheng318(忧郁王子)回复于 2006-03-08 20:20:38 得分 0

BOOL   blCodingAndDecode(CByteArray   &btBuffer,   BOOL   bValue)  
   
  问题解决!  
  Top

6 楼fyx010641(方怡新)回复于 2006-03-08 20:37:45 得分 0

建议去MSDN看看!!Top

7 楼oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣)回复于 2006-03-08 21:45:38 得分 0

用引用就不需要拷贝了Top

8 楼benxudong()回复于 2006-03-09 11:55:43 得分 0

定义成:BOOL   blCodingAndDecode(BYTE   *btBuffer,   BOOL   bValue);  
  调用函数改成:blCodingAndDecode(   OutBuf.GetData(),   TRUE   );  
  应该可以Top

相关问题

  • CByteArray怎么用?
  • 我想把CByteArray类型的转换成CString,我该怎么转?最好别告诉我用循环转换。。
  • VARIANT 怎么转换成 CByteArray
  • 一个BYTE怎么可以等于CByteArray+CByteArray+BYTE的呢?
  • CTime类,怎么用?
  • CFileDialog 类怎么用?
  • CFile类怎么用?
  • 如何将CByteArray转换为char*类型?
  • ▓▓▓▓▓▓▓▓ 使用SPRING IOC时,我怎么怎么设计类才好 ▓▓▓▓▓▓▓▓
  • AnsiString&是什么类型,怎么用?

关键词

  • bt
  • cbytearray
  • outbuf
  • xc
  • 问题
  • bool

得分解答快速导航

  • 帖主:Joy58061678

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo