decltype typename[通俗易懂]

decltype typename[通俗易懂]decltype((variable))总是引用类型,但是decltype(variable)只有当variable是引用类型时才是引用类型。#include<iostream>#include<typeinfo>usingstd::cin;usingstd::cout;usingstd::endl;autof(au…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

decltype((variable))总是引用类型,但是decltype(variable)只有当variable是引用类型时才是引用类型。

#include <iostream>
#include <typeinfo>

using std::cin;
using std::cout;
using std::endl;

auto f(auto x)
{ return x+1;}
auto f(auto x,auto y)->decltype(y){
    return x-y;
}
 
double func()
{
    cout << "func executed." << endl;
    return 2.5+3.6;
}

int main()
{
    decltype(func()) sum;
    cout << typeid(sum).name() << endl;
    
    const int ci = 0, &cj = ci;
    decltype(ci) x = 0;
    decltype(cj) y = x;
    //decltype(cj) z; // compile error: ‘z’ declared as reference but not initialized
    cout << typeid(x).name() << endl;
    cout << typeid(y).name() << endl;
    
    int i = 10, *p = &i, &r = i;
    decltype(r + 0) b;
    //decltype(*p) c; // compile error: ‘c’ declared as reference but not initialized
    cout << typeid(b).name() << endl;
    
    decltype(i) u;
    //decltype((i)) v; // compile error: ‘v’ declared as reference but not initialized
    
    return 0;
}

 

转载于:https://www.cnblogs.com/huashiyiqike/p/3927894.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/197493.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 《算法和数据结构》算法零基础五十题讲解

    《算法和数据结构》算法零基础五十题讲解「让天下没有难学的算法」

  • 基于 Echarts 实现可视化数据大屏展示[通俗易懂]

    基于 Echarts 实现可视化数据大屏展示[通俗易懂]前言收集了一套基于Echarts实现可视化数据大屏响应式展示效果的源码,共计30个页面,可以在此基础上重新开发。实现方式:html+Echarts贴图有需要的可以联系我暂时不开源,之后会考虑写教程和开源项目。…

  • go 布隆过滤器_布隆过滤器 redis

    go 布隆过滤器_布隆过滤器 redis最近面临这样的场景:2亿+数据需要调用后端服务A,业务需要1min处理完成,那么A服务承载的tps达到惊人的300w……必须想办法降低tps。那么方案来了:1、把时间窗口拉长2、降低待处理数据量。拉长时间业务肯定是接受不了的,但是按照以往的经验,这部分数据并不全部需要处理,可能仅有一半真正需要调用A服务,所以我们可以把1亿数据给过滤掉。这里我们维护一个布隆过滤器来进行数据的过滤。—————-以上都是导语—————-1.布隆过滤器的概

  • app弱网测试的方法(测试自己声音类型app)

    一,弱网场景简介当前APP网络环境比较复杂,网络制式有2G、3G、4G网络,还有越来越多的公共Wi-Fi。不同的网络环境和网络制式的差异,都会对用户使用app造成一定影响。另外,骑士使用我们产品的场景多变,如进入地下美食城、进电梯,进各种写字楼,居民楼等,使得弱网测试显得尤为重要。如果app没有对各种网络异常进行兼容处理,那么骑士在进行正常的业务履单操作时可能遇到APP闪退、ANR、数据丢失等问题。二,弱网测试介绍什么样的网络属于弱网?低于2G速率的时候都属于弱网,3G也可划分为弱网,一般Wi-

  • vscode配置javaweb环境_vscode electron

    vscode配置javaweb环境_vscode electronVScode配置Java环境1、下载VSCodeVSCode下载官网2、配置中文环境如果懂英语,或者想在编程上有更好的进步,可以跳过这一步,毕竟以后工作,很多软件并非中文,但像我这样的英语困难户,还是下载了该插件,毕竟香啊(〃 ̄︶ ̄)在VSCode的左侧点击小方块,搜索Chinese(Simplified)LanguagePackforVisualStudioCode插件,点击安装。(这是安装后的界面)3、配置相关插件和Java的JDK1、新建文件(快捷键Ctrl

  • Pycharm教程–断点调试「建议收藏」

    Pycharm教程–断点调试「建议收藏」pycharm怎么debug单步调试?首先,打开一个的pycharm的界面当中,需要选中编辑器中的左侧。 然后pycharm的菜单中的run的菜单。点击了run的菜单之后,选中debug的选项。 就可以看到是在编辑器当中的选中一个断点。然后就可以对于当前中的点击下一步中按钮。可以看到是代码就会移动到下一行的代码上了。或者使用快捷键的方式来移动下一步….

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号