首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >无法为C++函数模板分配较短的名称

无法为C++函数模板分配较短的名称
EN

Stack Overflow用户
提问于 2016-04-23 09:07:26
回答 1查看 92关注 0票数 2

为了提高代码的可读性,我试图为函数模板指定更短的名称,如下面的示例所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include <iostream>

template<typename T>
T func(T a, T b)
{
    return a + b;
}

int main() 
{
    using fi = func<int>;
    using fd = func<double>;

    std::cout << fi(1, 1) << std::endl;
    std::cout << fd(1.0, 1.0) << std::endl;

    return 0;
}

但是在试图编译时,我会得到一个错误。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$ g++ func.cpp -o func
func.cpp: In function ‘int main():
func.cpp:11:11: error: expected nested-name-specifier before ‘fi’
     using fi = func<int>;
           ^

在不依赖于预处理器定义的情况下,为函数模板分配较短名称的公认方法是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-23 09:10:11

使用引入一种类型。函数模板及其实例不是类型。

auto取代using将使您的代码编译并执行您可能想做的事情。许多cpmpilers对于内联简单函数指针的情况都很好,所以在prod中它可能没有任何性能影响。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36813883

复制
相关文章
WPF 设置元素为 Collapsed 是否会创建此元素
在 WPF 的 XAML 中,如果将某个元素初始的时候设置 Visibility 为 Collapsed 的值,那么意味着这个元素将不会参与布局,就和不存在是一样的。那么这个元素是否会被创建在内存中?是会创建的
林德熙
2020/11/27
1.1K0
是否需要转方向 ?
这类问题没有标准的答案,每个人的理解也不一样,我写下的也只是我个人的想法,仅供大家参考。
五分钟学算法
2019/10/15
5810
在自媒体快速发展的今天,新闻行业是否需要小程序?
新闻行业微信小程序开发的必要性就显而易见了,因为微信小程序将是应用在中低频应用领域的,而一些小众的兴趣爱好也必将有着更多的市场,只要能够将这些零散的用户聚集起来,在对比于微信的8亿+用户,那么就可以得到更多的流量,从而获取更多的红利。公众号的大火,至少可以表明一个原因,就是用户在其中找到了自己的兴趣点,找到了一群和自己相似的人,这就符合了大家“群聚”的一个属性。而现在的新闻行业都在向着大而全,大而密的角度去开发小程序,这样造成的结果可能就是用户无法找到自己想要的信息,反而被一些无关紧要的信息,浪费了时间。
微宝阁
2018/08/14
1.4K0
在自媒体快速发展的今天,新闻行业是否需要小程序?
open()是否需要缓冲区
通常情况下、建议大家在使用 open() 函数时打开缓冲区,即不需要修改 buffing 参数的值。
用户8442333
2021/11/30
3800
你是否也需要这个功能
HI各位小伙伴,你们好!十一假期转眼过半啦!不知道你过的怎么样?小农在这祝各位假期愉快。
用户4442670
2022/06/29
4990
你是否也需要这个功能
你是否需要Google Data Studio 360?
译者:吴昊、审校:骆姿亦 本文长度为2079字,预估阅读时间4分钟。 我们今天要向大家介绍的是谷歌发布的一款可视化工具GoogleData Studio 360。 前言 如果你已经读过我们的前一篇博客《你是否需要Google Analytics 360?》,那么你已经了解到谷歌发布了这套针对营销和广告从业者的实用产品。我们这次将会介绍这套产品中的一款工具:GoogleData Studio 360。 Data Studio 360是一款可视化和分析工具。它可以与Google Analytics、Googl
iCDO互联网数据官
2018/03/05
2.5K0
你是否需要Google Data Studio 360?
是否需要使用依赖注入容器?
本文是依赖注入(Depeendency Injection)系列教程的第 2 篇文章,本系列教程主要讲解如何使用 PHP 实现一个轻量级服务容器,教程包括:
柳公子
2018/09/17
2.2K0
企业是否需要高性能计算?
随着成本的下降和用例的增加,高性能计算正在吸引各种类型和各种规模的新用户。其扩展选项包括基于超级计算机的高性能计算(HPC)系统、基于集群的高性能计算(HPC)以及基于云计算的高性能计算(HPC)服务。
静一
2019/10/15
7570
企业是否需要高性能计算?
程序员需要多个显示器来提高工作效率
程序员需要多个显示器来提高工作效率 我发现了一篇很有意思的关于研究多个显示器与生产力的博客文章。去年一些开发人员,包括我自己,开始使用多个显示器设置。基于我的经验,我完全同意这项研究调查的结果: 平
用户1289394
2018/02/27
1.5K0
程序员需要多个显示器来提高工作效率
Python并行判断多个大整数是否为素数
本文主要用到Python标准库concurrent.futures提供的并发执行功能,类似于进程池的用法,在多核或多CPU平台能够大幅度提高处理速度。 from concurrent.futures import ProcessPoolExecutor PRIMES = [1099726899285419,112582705942171, 112272535095293, 115280095190773, 115797848077099, 9000099011] de
Python小屋屋主
2018/04/16
1.3K0
Java 中 Array 和 ArrayList 的比较和转换
在 Java 编程中,arrays 和 arraylists 都是基本的数据结构,用来存放数据集合。虽然两者的用途一样,但是它们的特点极大地影响应用的性能和灵活性。
Jimmy_is_jimmy
2023/08/16
2520
Java 中 Array 和 ArrayList 的比较和转换
啊,业务层是否也需要服务化?
《互联网分层架构的本质》简述了两个观点: 互联网分层架构的本质,是数据的移动 互联网分层架构演进的核心原则:是让上游更高效的获取与处理数据,让下游能屏蔽数据的获取细节 《分层架构:什么时候抽象DAO层,什么时候抽象数据服务层》中的观点是: 当手写代码从DB中获取数据,成为通用痛点的时候,就应该抽象出DAO层,简化数据获取过程,提高数据获取效率,向上游屏蔽底层的复杂性 当业务越来越复杂,垂直拆分的系统越来越多,数据库实施了水平切分,数据层实施了缓存加速之后,底层数据获取复杂性成为通用痛点的时候,就应该抽象出数
架构师之路
2018/03/02
1.3K0
啊,业务层是否也需要服务化?
小程序-获取多个formId
如同上面的几行代码,只要你点击登录按钮,就能提交一次表单,也能获取一次formId,但是想要实现点击一次提交多次,光靠复制这几行代码,貌似还不行,无论是缩小按钮,还是一些其他的奇葩方式,都不行。
前端黑板报
2018/08/15
2.3K1
小程序-获取多个formId
检查多个远程 Linux 系统是否打开了指定端口
如果要检查五个服务器有没有问题,可以使用以下任何一个命令,如 nc(netcat)、nmap 和 telnet。但是如果想检查 50 多台服务器,那么你的解决方案是什么?
用户9104802
2021/11/22
3.7K0
设计师/产品经理是否需要懂技术?
这个问题相当于,问我们是否需要掌握2个看似独立的学科。在《穷查理宝典》书中,查理.芒格认为,事物之间都是相互联系的。对于一个具体问题,如果仅仅用一种思维方式来进行分析和思考,只会得到一个狭隘的结果,美国有句谚语很好地表达了这个观点,“在手里拿着铁锤的人看来,世界就像一颗钉子”。
mixlab
2018/04/12
9776
设计师/产品经理是否需要懂技术?
博物馆是否需要自动化摄影
博物馆是否需要自动化摄影设备取决于博物馆的具体需求和情况。自动化摄影设备可以帮助博物馆记录、存档和展示收藏品,减少人工操作和减轻工作压力。但是,它们需要适当的技术支持和维护,以确保其正常运行和保护收藏品的安全性。因此,在考虑引入自动化摄影设备之前,博物馆应该进行全面的规划和评估,并确保其适应其实际需求和预算。
ORBITVU_欧保图
2023/02/21
3560
你的公司是否真的需要大数据战略?
我们认为,企业应该重视数据统治和数据管理。如果数据是一个企业最重要的资产,然后常规的数据统治项目和数据管理最佳实践是其能够实现的多数投资策略。如果只有其中一种投资,企业都会在获取已有数据资源中面临挑战,仍然有可能会被大数据的迸发淹没掉企业。数据统治和数据管理共同掌控着一个企业如何实现理解和使用自己的数据资产,以及那些资产随着时间是如何被管理的。两者变得更加具备战略性,因为企业从数据中获得发展,记录的中心数据库系统基于动态的历史结果做报告,参与的实时系统能更快生成洞察力和告知新手更好的决策,更准确的数据。
IT阅读排行榜
2018/08/14
3530
DotNet多个程序集合并工具
    有很多人问到过“如何合并两个.NET的DLL”。这也是我自己想知道答案的问题。这个ILMerge,就是解决这个问题的工具,可以从微软的网站下载:http://www.microsoft.com
张善友
2018/01/19
7970
设计师/产品经理是否需要懂技术?
封面由ARKie智能设计赞助 设计师/产品经理是否需要懂技术? 这个问题相当于,问我们是否需要掌握2个看似独立的学科。在《穷查理宝典》书中,查理.芒格认为,事物之间都是相互联系的。对于一个具体问题,如果仅仅用一种思维方式来进行分析和思考,只会得到一个狭隘的结果,美国有句谚语很好地表达了这个观点,“在手里拿着铁锤的人看来,世界就像一颗钉子”。 MixLab 也赞成跨学科的思维来思考问题。思考一个问题,需要集合不同背景的人来一块思考。这样才能更全面的考虑到问题的所有可能。本文以小程序的设计与开发为例,讲述下
mixlab
2018/04/17
6510
设计师/产品经理是否需要懂技术?
点击加载更多

相似问题

此关系是否需要多个关联表?

21

将ArrayLists拆分为多个ArrayLists

22

连接多个ArrayLists

31

ArrayList of可能多个ArrayLists

32

带环的多个ArrayLists

46
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文