社区
C++ 语言
帖子详情
求助:关于new的一个面试题
skyguide
2008-10-13 12:03:25
C++中的new操作符通常完成两个工作, 分配内存及其调用相应的构造函数初始化
请问:
1) 如何让new操作符不分配内存, 只调用构造函数?
2) 这样的用法有什么用?
知道的高人指点一下,谢谢
...全文
92
10
打赏
收藏
求助:关于new的一个面试题
C++中的new操作符通常完成两个工作, 分配内存及其调用相应的构造函数初始化 请问: 1) 如何让new操作符不分配内存, 只调用构造函数? 2) 这样的用法有什么用? 知道的高人指点一下,谢谢
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
waydream
2008-10-16
打赏
举报
回复
重载new
nk_ysg
2008-10-13
打赏
举报
回复
谢谢
[Quote=引用 8 楼 baihacker 的回复:]
引用 7 楼 nk_ysg 的回复:
引用 1 楼 baihacker 的回复:
new(地址) 类型(初始化列表);
做法可以主动调用构造函数,和实现自己分配内存(自己写个内存分配器,在为一个类的对象分配的时候,需要调用构造函数)
能更详细解释下吗?不懂
网上搜索一下放置new
[/Quote]
baihacker
2008-10-13
打赏
举报
回复
[Quote=引用 7 楼 nk_ysg 的回复:]
引用 1 楼 baihacker 的回复:
new(地址) 类型(初始化列表);
做法可以主动调用构造函数,和实现自己分配内存(自己写个内存分配器,在为一个类的对象分配的时候,需要调用构造函数)
能更详细解释下吗?不懂
[/Quote]
网上搜索一下放置new
nk_ysg
2008-10-13
打赏
举报
回复
[Quote=引用 1 楼 baihacker 的回复:]
new(地址) 类型(初始化列表);
做法可以主动调用构造函数,和实现自己分配内存(自己写个内存分配器,在为一个类的对象分配的时候,需要调用构造函数)
[/Quote]
能更详细解释下吗?不懂
matrixdwy
2008-10-13
打赏
举报
回复
也许是placement new吧
yshuise
2008-10-13
打赏
举报
回复
内存池都是必须这样使用。
jia_xiaoxin
2008-10-13
打赏
举报
回复
而placement new就是在给定的内存上面调用构造函数生成对象。
可用于在一块内存上(new出来的)只调用构析函数把对象析构了,不释放内存,然后再构造出另外一个对象。
jia_xiaoxin
2008-10-13
打赏
举报
回复
它这是在考布局new操作吧,
Placement new 是在已经被分配但是尚未处理的内存构造一个对象
new(buffer) Widget(widgetSize)
rollrock1987
2008-10-13
打赏
举报
回复
没想过 up
baihacker
2008-10-13
打赏
举报
回复
new(地址) 类型(初始化列表);
做法可以主动调用构造函数,和实现自己分配内存(自己写个内存分配器,在为一个类的对象分配的时候,需要调用构造函数)
经典
面试题
之
new
和malloc的区别
new
和malloc的区别是C/C++一道经典的
面试题
,我也遇到过几次,回答的都不是很好,今天特意整理了一下。 0. 属性
new
/delete是C++关键字,需要编译器支持。malloc/free是库函数,需要头文件支持。 1. 参数 使用
new
操作符申请内存分配时无须指定内存块的大小,编译器会根据类型信息自行计算。而malloc则需要显式地指出所需内存的尺寸。
new
new
Foo().getName()
面试题
解析
经典
面试题
Foo().getName() 解析题目如下,写出输出内容(注释:abcde为步骤标号,便于下边分析定位) 解析:1. Foo.getName(); // 2Foo为
一个
函数对象,对象都可以有属性,题目 b 处定义Foo的getName属性为函数,输出2 2. getName(); // 4这里看d、e处,d为函数表达式,e为函数声明,两者区别在于变量提升,这两处可以等价于 可见函数声明的 5 会被后边函数表达式的 4 覆盖。 3. Foo().getName(); // 1这里要看
【
面试题
】
new
一个
对象时,js 做了什么?
在 JavaScript 中, 通过
new
操作符可以创建
一个
实例对象,而这个实例对象继承了原对象的属性和方法。因此,
new
存在的意义在于它实现了 JavaScript 中的继承,而不仅仅是实例化了
一个
对象。
2024年Web前端最新【
面试题
】
new
一个
对象时,js 做了什么?_
new
一个
对象js(1),2024年最新面试官的问话
小编综合了阿里的
面试题
做了一份前端
面试题
PDF文档,里面有
面试题
的详细解析开源分享:【大厂前端
面试题
解析+核心总结学习笔记+真实项目实战+最新讲解视频】在上述例子中的构造函数中返回了1,但是这个返回值并没有任何的用处,得到的结果还是和之前的例子完全一样。我们又可以得出
一个
结论:构造函数如果返回原始值,那么这个返回值毫无意义。const t =
new
Person('小明')复制代码通过上面这个例子我们可以发现,当返回值为对象时,这个返回值就会被正常的返回出去。
go_
面试题
: make()和
new
()的区别?
go_
面试题
: make()和
new
()的区别? 文章目录go_
面试题
: make()和
new
()的区别?go 语言中make()和
new
()的区别?概述:源码查看Make()
New
() go 语言中make()和
new
()的区别? 概述: make() 的作用是初始化内置的数据结构,也就是切片(slice)、哈希表(map)和 Channel
new
() 的作用是根据传入的类型分配一片内存空间并返回指向这片内存空间的指针 源码查看 可以从源码定义上来看,make()返回的是类型本身;而
new
()返回的
C++ 语言
65,211
社区成员
250,514
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章