c语言中访问是什么意思 c++中访问是什么意思
lt;pgt;对象用.,指针用-gt;;人p用p.age,人* ptr用ptr-gt;年龄,智能指针同理,混用会编译错误。lt;/pgt;
在C中,. 和 -gt; 是用于访问类成员的两个符操作,它们的使用取决于你操作的对象本身还是指向对象的指针。 1. 成员访问符。 的使用
。 操作符用于通过对象实例直接访问其公共成员(变量或函数)。
当你有一类的对象时,使用点号来调用它的成员:class Person {public: int Age; void sayHello() { cout lt;lt; quot;Hello!quot; lt;lt; endl; }};lt;pgt;Person p; // 创建对象p.age = 25; // . 访问成员变量p.sayHello(); // 使用 . 调用成员函数lt;/pgt;登录后复制
注意:只有public成员才能通过 .
立即学习“C免费学习笔记(研究)”;2. 成员访问符 -gt;的使用
-gt;操作符用于通过指向对象的指针来访问成员。
当你持有一个对象的指针时,应使用 -gt;来访问该对象的成员:Person* ptr = amp;p; // 指向对象的指针ptr-gt;age = 30; // 使用 -gt;访问成员指针指针;sayHello(); // 使用 -gt;调用成员函数登录后复制
表达式ptr-gt;age等价于(*ptr).age——先解引用指针得到对象,再用 . 访问成员。
3. 如何选择。 还是-gt;
判断使用哪个操作符的关键提示指针类型:Timebolt
视频静态过滤器,可以快速自动删除沉默镜头26查看详情如果指针是对象本身(如Person p),用.如果指针是指向对象的指针(如Person* ptr),用-gt;如果指针是智能指针(如std::shared_ptrlt;Persont;sp),也用-gt;,因为它重载了这个操作符
例如:std::shared_ptrlt;Persont; sp = std::make_sharedlt;Persont;();sp-gt;age = 28; // 智能指针使用 -gt;sp-gt;sayHello();登录后复制4. 常见错误提示
以下写法会导致编译错误:Person* ptr = new Person();ptr.age = 25; // 错误:ptr 是指针,不能用.登录后复制
正确应为:ptr-gt;age = 25;
反过来:Person p;p-gt;age = 25; // 错误:p是对象,不是指针登录后复制
正确应为:p.age = 25;
基本上就这些。记住:对象用点,指针用箭头,就不会出错。
以上就是C成员访问符.和-gt;使用方法解析的详细内容,更多请关注乐哥常识网其他文章! 相关标签:c编译错误红色变量类型指针公共对象大家都在看:C基本数据类型转换方法解析 C如何使用fstream实现文件复制功能 C环境搭建中如何优化IDE配置提高效率 C相关变量定义规则与常见写法 C 11如何使用decltype(auto)自动推导类型