c++的一个访问限制的问题

code145 2008-03-07 10:16:14
在类的外面定义类中的成员函数,那么这个外部定义的过程中是否能够访问类中的私有数据和成员函数????--------刚学习C++.请各位赐教
...全文
75 8 打赏 收藏 举报
写回复
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Cplusplus2005 2008-03-07
  • 打赏
  • 举报
回复
为便于理解,再举一个例子:

class T{
public:
typedef int INT;
int f();
};

INT T::f(){ } //错误!"typedef int INT;"不可见!

T::INT T::f(){ };//ok!
newkt 2008-03-07
  • 打赏
  • 举报
回复
Class T{
public:
void f();
};

void T::f()
{
}

T::的意思是指 作用域在T类.
code145 2008-03-07
  • 打赏
  • 举报
回复
5楼的意思我不是很明白啊,能在详细些吗?
Cplusplus2005 2008-03-07
  • 打赏
  • 举报
回复
简单地说明一下:

Class T{
public:
void f();
};

void T::f(){};

我们以" Type class_name::function_name(...) "这样的形式来在类外部定义成员函数。注意到我们加上了“class_name::”,所以,在其后可以出现class_name类中任何成员名。但是,在“class_name::”出现之前,就不能直接访问class_name类中的私有数据和成员函数。
xhd3767 2008-03-07
  • 打赏
  • 举报
回复
类里面是声明的。外面是实现,其实是一样的,当然可以调用了
sinosinux 2008-03-07
  • 打赏
  • 举报
回复
absolutely, 当然能
ouyh12345 2008-03-07
  • 打赏
  • 举报
回复
Cplusplus2005 2008-03-07
  • 打赏
  • 举报
回复
当然能。
相关推荐
发帖
C++ 语言

6.3w+

社区成员

C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
帖子事件
创建了帖子
2008-03-07 10:16
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下