首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于const的提问,麻烦大家给看看啊该如何处理

2012-02-24 
关于const的提问,麻烦大家给看看啊有这样一个函数function(constABC*pAbc,constchar*path)ABC是这样一个

关于const的提问,麻烦大家给看看啊
有这样一个函数
function(const   ABC*   pAbc,   const   char*   path);
ABC是这样一个结构体
typedef   struct   {
inta;
intb;
unsigned   char*c;
}   ABC;

这个函数作用是读取第一个参数写入第二个参数指向的文件路径中
现在我需要调用这个函数,怎么给第一个参数赋值啊?


[解决办法]
实例化一个struct啊
[解决办法]
传入的参数不一定严格的const
非const向const转化是支持的
[解决办法]
可以传非 const 的普通变量.
[解决办法]
ABC v1;
function(&v1, "C:\\ ");
const ABC v2;
function(&v2, "C:\\ ");
都可以
非const可以匹配const,在C++这属于精确匹配
const不能赋给非const,破坏常量性
[解决办法]
现在我需要调用这个函数,怎么给第一个参数赋值啊?
-----------------------------------------------
你只需要将一个指向ABC对象的指针传递给第一个参数即可,无论这个指针指向的ABC对象是否const都可以。
但是反过来就不行了,比如你的函数接受ABC*,但是你要传给他一个const ABC*,则会出错。

热点排行