我这个 C++小菜鸟,觉得
make_pair<int, int>(0, 1)
和
pair<int, int>(0, 1)
执行效果是一样的啊,
为什么历史上会存在 make_pair 这种函数?
今后 make_pair 是不是要被逐渐淘汰?
有人能讲讲 make_shared 发生了什么就更好了,,,我的猜想是把一个栈内存的对象,搞到堆里去。
1
caiych 2017-06-28 13:12:01 +08:00 1
|
2
wangjxxx 2017-06-28 13:36:09 +08:00 1
Effective modern c++
|
3
gnaggnoyil 2017-06-28 18:43:42 +08:00 via Android 1
template function 可以省略模板参数由编译器帮助推断,而 template class 则不行,除了 c++17 新加的那个 deduction guide
|
4
gnaggnoyil 2017-06-28 18:45:32 +08:00 via Android
所以,make_pair 将来确实会消亡,但
|
5
gnaggnoyil 2017-06-28 18:46:41 +08:00 via Android
那也主要是 deduction guide 的原因,而不是楼主说的那样
|