小编Gre*_*bur的帖子

为什么构造函数不能推导出模板参数?

template< class T >
class Foo {
public:
  Foo( T t ) { }
};

int main () {
  int i = 0;
  Foo f( i );
}
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,编译器抱怨在'f'之前缺少模板参数.我理解从构造函数的参数中推导出类的模板参数不是标准的一部分,但我的问题是为什么?编译器是否具有隐式实例化Foo<int>和调用其构造函数所需的所有信息?

编辑要清楚的是我打电话与构造int(而不是一个short,long,void*,等)

c++

58
推荐指数
4
解决办法
3613
查看次数

函数参数没有评估

我正在尝试设置几张地图以快速完成合并冲突.这是我的代码:

func! DiffAccept(w)
  diffget a:w
  diffupdate
  normal ]c
endfunc

noremap dh :exec DiffAccept("//2")<CR>
noremap dl :exec DiffAccept("//3")<CR>
Run Code Online (Sandbox Code Playgroud)

每次我尝试使用它时,我得到"没有匹配的缓冲区:a:w".我显然使用这个变量是错误的,但是当我将行更改为"echo a:w"时,它会按预期运行.

vim vimdiff

2
推荐指数
1
解决办法
55
查看次数

标签 统计

c++ ×1

vim ×1

vimdiff ×1