美文网首页
指针与结构体

指针与结构体

作者: analanxingde | 来源:发表于2018-12-27 09:48 被阅读9次

二维vector的遍历

void reverse_with_iterator(vector<vector<int>> vec)
{
    if (vec.empty())
    {
        cout << "The vector is empty!" << endl;
        return;
    }
    vector<int>::iterator it;
    vector<vector<int>>::iterator iter;
    vector<int> vec_tmp;

    cout << "Use iterator : " << endl;
    for(iter = vec.begin(); iter != vec.end(); iter++)
    {
        vec_tmp = *iter;
        for(it = vec_tmp.begin(); it != vec_tmp.end(); it++)
            cout << *it << " ";
        cout << endl;
    }
}

指针初始化

指针变量存放的是变量的地址
定义初始化:
指针定义时初始化可以用“=”

  • 类型名指针变量=&变量;
  • 类型名指针变量=指针变量;
  • 类型名指针变量=0;//这里的0可以是0值常量表达式(const 0)
int a;
int *p=&a;
int *p1=p;
int *p1=0

C++支持一种特殊的指针类型void*,它可以保存任何类型对象的地址
与取址运算符&对应,C++提供指针运算符*(解引用运算符),*运算获取指针所指的对象。

迭代器与指针

只讨论 STL container 类的 iterator,它们其实都是一种泛型指针。C风格指针是属于 iterator 的一种的。iterator 根据功能做了更细的划分,STL 中的 iterator 分成了五类。我觉得它们的区别:

  • 在范围上,pointer 属于 iterator 的一种(random access iterator)在功能上,iterator 有着比 pointer 更细的划分并对应能力不同的功能(重载不同的运算符)
  • 在行为上,iterator 比 pointer 更统一和良好的用法(更轻易使用 begin()、end()且不用担心越界)
    作者:Alinshans
    链接:https://www.zhihu.com/question/54047747/answer/137755282
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

结构体

为了使用方便和使之直观,C++提供了指向结构体变量的运算符->,例如p->num表示指针p当前指向的结构体变量中的成员num。
p->num 和(*p).num等价
当指针对象要用于引用类型的参数时,需要的是对指针间指获取对象,将对象作为引用参数。

常见error:

request for member ‘empty’ in ‘json_ori->Json_Pk::json_record’, which is of non-class type ‘Json::Value*’
https://stackoverflow.com/questions/18806285/error-request-for-member-which-is-of-non-class-type
指针是基本类型,不能解引用
*json_ori.json_record.empty()改为json_ori.json_record->empty()

相关文章

  • C语言20 结构体指针

    C语言20 结构体指针 探测结构体指针的特性 ++、-- 加法与减法 指针相减 使用结构体指针 结构体指针一定要指...

  • C语言-5、结构体

    写法一 写法二 写法三 结构体指针 结构体指针 与 动态内存开辟 结构体的数组 结构体与结构体指针 取别名 取别名...

  • 结构体与结构体指针数组

    1.结构体定义与使用。 2.结构体指针 与 动态内存开辟。 3.结构体的数组。 4.结构体与结构体指针 取别名。 ...

  • C语言基础及指针⑧文件IO

    接续上篇C语言基础及指针⑦结构体与指针在结构体与指针中 , 我们了解到结构体与java中的类相似 , 也是一种自定...

  • Day10

    指针 指针与函数 练习回调函数 结构体 基本概念 结构体变量初始化 定义结构体变量 结构体变量作用域结论; 和变量...

  • 结构体与结构体指针

    C中的结构体,对应JAVA中的类的概念。也就是一些数据结构的集合,形成一种新的数据结构。 见一个例子 struct...

  • 函数指针,联合体,枚举,结构体和结构体指针

    函数指针 联合体 枚举 别名 结构体 结构体指针

  • Go语言之结构体指针

    结构体本身属于值类型,可以通过指针操作结构体,编程引用类型的数据,通过new()创建指针 结构体指针

  • 指针与结构体

    二维vector的遍历 指针初始化 指针变量存放的是变量的地址定义初始化:指针定义时初始化可以用“=” 类型名指针...

  • 结构体与指针

    1.1 Linux C语言结构体 简介:本课程深入的讲解了C语言中,预处理是怎么回事,结构体和公用体又是如何使用及...

网友评论

      本文标题:指针与结构体

      本文链接:https://www.haomeiwen.com/subject/ohskpftx.html