list对象指针与指针类型list
#include <string>
#include <cctype>
#include <algorithm>
#include <iostream>
#include <list>
using namespace std;
class Base{
public:
int data;
Base(int y):data(y){}
};
Base *pt(int x){
Base *tmp = new Base(x);
return tmp;
}
int main()
{ string str("ceshi andx 123 benjing");
int x = 0;
char first[6] = {0};
char last[16] = {0};
char mid[16] = {0};
int ret = sscanf(str.c_str(), "%s%s%d%s", first, mid, &x, last);
cout << ret << " first:" << first << " mid:" << mid << " x:" << x << " last:" << last << endl; //int指针类型的list
list<int *> intptr;
int *tmp = new int[];
for(int i=; i<; i++){
tmp[i] = i;
intptr.push_back(&tmp[i]);
}
list<int *>::iterator liter;
for(liter = intptr.begin(); liter != intptr.end(); ++liter)
cout << **liter << endl;
for (std::list<int*>::iterator it = intptr.begin(); it != intptr.end();it++)
{
//delete ⁢ //error
}
delete[] tmp; //以下list对象指针均建立在堆上,需要new/delete结合申请与释放
//list元素为基本数据类型的对象指针
list<int> *ptr = new list<int>[2];
ptr->push_back(2);
ptr->push_back(3);
list<int>::iterator iter;
for(iter = ptr->begin(); iter != ptr->end(); ++iter)
cout << *iter << endl;
delete[] ptr;
//list元素为自定义类型的对象指针
list<Base> *pBase = new list<Base>[5];
Base ba(4);
Base bb(5);
pBase->push_back(ba);
pBase->push_back(bb);
list<Base>::iterator iterb;
for(iterb = pBase->begin(); iterb != pBase->end(); ++iterb)
cout << (*iterb).data << endl;
delete[] pBase; }
list对象指针与指针类型list的更多相关文章
- C++@类对象和类指针的区别(转)
原文地址不详 如下程序: #include <iostream> #include <string> using namespace std; class Student { ...
- c++中多态性、dynamic_cast、父类指针、父类对象、子类指针、子类对象
c++多态性是依靠虚函数和父类指针指向子类对象来实现的.简单来说,父类中定义虚函数,父类指针指向子类对象,父类指针调用函数时调用的就是子类的函数. 父类没有定义虚函数,父类指针指向子类对象时,父类指针 ...
- procedure of object 对象的函数指针
应用:http://www.cnblogs.com/del88/p/6361117.html 有 class of object ----- 类的类型 那么自然有 方法的类型,方法的类型 分为两种: ...
- C++ 指针(不论什么一个指针本身的类型都是unsigned long int型)
1.指针数组: 即 数组的元素是指针型; 例:int*pa[2]; 明明是一维的指针数组.竟当作二维数组用. [cpp] view plain copy //利用指针数组存放单位矩阵 #include ...
- C语言指针转换为intptr_t类型
1.前言 今天在看代码时,发现将之一个指针赋值给一个intptr_t类型的变量.由于之前没有见过intptr_t这样数据类型,凭感觉认为intptr_t是int类型的指针.感觉很奇怪,为何要将一个指针 ...
- iOS 关于僵尸对象和僵尸指针的那些事儿
引言 提到僵尸就感到一种恐怖,大家都知道“僵尸”是没有生命的,但是它确实是一种存在的类似生命体的一种生物.哈哈,当然本文的重点不是讨论“僵尸”,而是有关于ios当中经常遇到的僵尸指针(Zombie P ...
- C语言 详解多级指针与指针类型的关系
//V推论①:指针变量的步长只与‘指针变量的值’的类型有关(指针的值的类型 == 指针指向数据的类型) //指针类型跟指针的值有关,指针是占据4个字节大小的内存空间,但是指针的类型却是各不相同的 // ...
- C++的函数对象优于函数指针地方
转载自:http://blog.csdn.net/huang_xw/article/details/7934156 在C++编程语言中,有很多功能都与C语言相通,比如指针的应用等等.在这里我们介绍的则 ...
- C++中指向对象的常指针和指向常对象的指针
指向对象的常指针 将指向对象的指针变量声明为const型,并使之初始化,这样指针值始终保持为其初始值,不能改变. Time t1(10,12,15),t2; Time * const ptr1=&am ...
- Go_笔试题记录-指针与值类型实现接口的区别
1.如果Add函数的调用代码为: func main() { var a Integer = 1 var b Integer = 2 var i interface{} = &a sum := ...
随机推荐
- Ubuntu16.04LTS +Qt+boost1.66编译错误:consuming_buffers.hpp: parse error in template argument list
升级gcc版本至 6 以上.. 安装gcc-6系列与安装boost (Ubuntu16.04LTS)
- Jenkins控制台输出乱码
一.问题详情 jenkins构建mav任务,在控制台显示乱码: 二.原因分析 1. 查看系统编码和tomcat的编码都正常 # grep encoding /usr/local/tomcat/conf ...
- PowerBI开发 第十三篇:增量刷新
PowerBI 将要解锁增量刷新(Incremental refresh)功能,这是一个令人期待的更新,使得PowerBI可以加载大数据集,并能减少数据的刷新时间和资源消耗,该功能目前处于预览状态,只 ...
- MVC的多页面后台管理系统
MVC的多页面后台管理系统 同样功能的后台管理系统,也是可以使用 ASP.NET MVC .Web API 和JQuery 来制作. 所有的功能都与Angular js的单页面相同.应用层所有的方法都 ...
- Js_图片轮播
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...
- Js_checkbox的互斥
function ck_click(obj) { var ck_20 = document.getElementById("ck_20"); var ck_25 = documen ...
- C++基础知识(1)
C语言是结构化编程语言(for循环.while循环.do while循环和if else语句),将低级语言的效率.硬件访问能力和高级语言的通用性.可移植性融合在一起. UNIX编译和链接 UNIX用C ...
- Kubernetes采用CoreDNS
参考文档: kubernetes插件:https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/dns/coredns 自 ...
- 微软职位内部推荐-Senior Software Engineer - Back End
微软近期Open的职位: SharePoint is a multi-billion dollar enterprise business that has grown from an on-prem ...
- Linux内核分析作业第三周
一.实验楼实验 使用实验楼的虚拟机打开shell 1 cd LinuxKernel/ 2 qemu -kernel linux-3.18.6/arch/x86/boot/bzImage -initrd ...