作者asdfg1597860 (Jay)
看板C_and_CPP
标题[问题]const的使用
时间Thu Nov 1 11:09:25 2018
开发平台(Platform): (Ex: Win10, Linux, ...)
WIN10
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
VC++
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
问题(Question):
喂入的资料(Input):
预期的正确结果(Expected Output):
错误结果(Wrong Output):
程式码(Code):(请善用置底文网页, 记得排版,禁止使用图档)
A.cpp
double* m_Matrix;
m_Matrix = new double[16];
const double *t_refer = m_Matrix; //指向常数的指标
GetMode(t_refer);
B.cpp
double* m_SecMatrix;
m_SecMatrix = new double[16];
GetMode(const double* &m_matrix)
{
m_matrix = m_SecMatrix;
}
补充说明(Supplement):
想请问各位前辈这个程式片段
指向常数的指标改变指标是合法的
为什麽B.cpp 里要用 & 的符号呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 59.127.200.146
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1541041767.A.A81.html
1F:推 jerryh001: &和你要问的问题无关吧 没&传进来的是double的位置 有& 11/01 11:18
2F:→ jerryh001: 传进来的才是那个指标变数 11/01 11:18
前辈解释後 我突然意识到是传参考呼叫 因为加上了CONST 搞得我有点混乱
谢谢前辈
※ 编辑: asdfg1597860 (59.127.200.146), 11/01/2018 12:01:02
3F:推 SWQLovE: double *const ptr 跟 const double *ptr 11/05 04:09
4F:→ SWQLovE: 他是指向常数变数的指标 不是指向变数的常数指标 11/05 04:10