【原创】一起学C++ 之->(箭头符号) ---------C++ primer plus(第6版)

C++新手在指定结构成员时,不知道何时用.运算符,何时是用->运算符。

结论:如果结构标识符是结构名,则使用句点运算符;如果标识符是指向结构的指针,则使用箭头运算符。

#include <iostream>
struct inflatable
{
    char name[20];
    float volume;
    double price;
};
int main(){
    using namespace std;
    int a;    //仅为保持dos界面
    inflatable *ps=new    inflatable;
    cout<<"Enter name of inflatable item: ";
    cin.get(ps->name,20    );
    cout<<"Enter volume in cubic feet: ";
    cin>>(*ps).volume;
    cout<<"Enter price : $";
    cin>>ps->price;
    cout<<"Name: "<<(*ps).name<<endl;
    cout<<"Volume: "<<ps->volume<<"cubic feet\n";
    cout<<"Price: $"<<ps->price<<endl;
    delete ps;
    cin>>a;   //仅为保持dos界面
    return 0;
}

输出结果:

对于例子中的 *ps 这个结构指针:

ps->name 等价于 (*ps).name

时间: 2024-07-29 21:36:05

【原创】一起学C++ 之->(箭头符号) ---------C++ primer plus(第6版)的相关文章

【原创】一起学C++ 之指针的--/++ ---------C++ primer plus(第6版)

讲*和++同时用于指针时提出了这样的问题:将什么解除引用,将什么递增. double arr[5]={21.1, 32.8, 23.4, 45.2, 37.4 }; double *pt=arr; //pt指针指向arr[0] 值为 21.1 ++pt; //pt指针指向arr[1] 值为 32.8 前缀运算符的从右到左结合规则意味着 *++p 的含义如下: 先将++应用于pt(因为++位于*的右边)然后将*应用于被递增后的pt-->指针递增 double x=*++pt; //指针+1,指向a

css小技巧,如何制作一个箭头符号

首先上图: 第一种方法大家可能想到了,就是用背景图片制作箭头符号,但是下面介绍的不是这种方法. 在介绍通过border制作箭头符号之前,先看下下面的css代码: <!DOCTYPE html> <html> <head> <link rel="stylesheet" href="style.css"> <script src="script.js"></script> <

简单总结es6箭头符号

1.es6箭头符号的几种写法 (1)没有参数 ()=>1*1 (2)一个参数 x=>x*x (3)两个参数以及多个参数 (x,y,z)=>x*y*z 2.箭头符号不会绑定this.arguments.super.new.target (1)arguments function foo() { setTimeout( () => { console.log("args:", arguments); },100); } foo( 2, 4, 6, 8 ); (2)t

HTML5移动开发即学即用(双色) 王志刚 pdf扫描版?

HTML5已经广泛应用于各智能移动终端设备上,而且绝大部分技术已经被各种最新版本的测览器所支持:逐一剖析HTML5标准中包含的最新技术,详细介绍了HTML5新标准中提供的各种API,各种各样的应用实例,可以直接应用于自己的HTML5程序中. HTML5移动开发即学即用(双色)书中几乎涵盖了HTML5规范中涉及的所有技水(还在酝酿中的IndexedDatabase除外),是您能找到的真正的HTML5技术大全.包含作者精心编写的,运行于常用PC测览器以及智能手机上的应用实例,操作性与实用性俱佳,可以

从零开始学Python程序设计(Python 3.5以上)中文pdf扫描版[172MB]高清下载

Python语言是面向对象的模块化设计语言,它易于学习.易于维护.可读性强,适合初学者作为入门程序设计语言. <从零开始学Python程序设计>以Python3.5版本作为教学版,针对初学者的特点,分为五篇内容进行全面讲解:第壹篇为基础入门篇(第1-3章),介绍Python语言的基本功能:第二篇为有序和无序篇(第4-6章),介绍控制台应用程序和窗口应用程序:第三篇为标准函数篇(第7和8章),介绍标准函数库的应用:第四篇为面向对象篇(第9-11章),介绍封装.继承和多态:第五篇为高级篇(第12-

php箭头符号

->这个箭头是调用类中的函数  比如  class a  {  function b()  {    echo 'a';  }  }  $a=new a;  $a->b();  输出:a 还有一个=>这样的箭头,定义数组用  比如  $array1=array('a'=>5,'b'=>6);  while($arrayitem=each($array1))  {  extract($arrayitem);  echo('  '.$key.'='.$value);  }  输出

【转】LaTeX 符号命令大全

函数.符号及特殊字符 声调 语法 效果 语法 效果 语法 效果 \bar{x} \acute{\eta} \check{\alpha} \grave{\eta} \breve{a} \ddot{y} \dot{x} \hat{\alpha} \tilde{\iota} 函数 语法 效果 语法 效果 语法 效果 \sin\theta \cos\theta \tan\theta \arcsin\frac{L}{r} \arccos\frac{T}{r} \arctan\frac{L}{T} \sin

ArcGIS制图表达Representation实战篇2-河流渐变与符号旋转

by 李远祥 上一章节主要是从实战中使用规则和几何效果,如何分解制图规则.本章主要还是通过一些特殊要求如河流线宽渐变和符号的角度旋转,介绍制图表达的另外两项技术--规则覆盖和制图表达工具. 在制图表达原理的章节中已经介绍过制图表达的两个字段,rule_ID和override ,之后的章节都是围绕这规则来讲解(也就是rule_ID记录的规则),那么本章节就开始介绍override 字段所显示的内容.原则中,override 记录的是规则覆盖的内容.先来看看河流线渐变和测站符号垂直河流旋转的效果.

dede当前位置去掉最后一个链接箭头

织梦dedecms的当前位置标签{dedefield name='position'},结构是 "首页 > 主栏目 > 子栏目 > ",箭头符号字段数据都是在后台设置后存储在数据库的,所以肯定有一个php代码是调用这个字段数据,经过数据库查看后发现是"cfg_list_symbol"这个字段名,接下来就找到定位标签{dedefield name='position'}的php文件"typelink.class.php",找到14