自己的 std::is_function 实现

2024-02-18

建议here http://en.cppreference.com/w/cpp/types/is_function按以下方式实施:

template<class Ret, class... Args>
struct is_function<Ret(Args...)const> : std::true_type {};
template<class Ret, class... Args>
struct is_function<Ret(Args...)volatile> : std::true_type {};

但这是有效的函数语法吗? Visual Studio 2013 报错:

error C2270: 'abstract declarator' : modifiers not allowed on nonmember functions   

The const or volatile函数参数之后称为cv-qualifier-seq。 C++14 标准第 8.3.5 节第 6 段说:

带有 cv-qualifier-seq 或 ref-qualifier 的函数类型(包括 由 typedef-name (7.1.3,14.1)) 命名的类型只能显示为:

— 非静态成员函数的函数类型,

— 指向成员的指针所指的函数类型,

— 函数 typedef 声明或别名声明的顶级函数类型,

— 类型参数的默认参数中的类型 ID (14.1),或者

— 类型参数的模板参数的类型 ID (14.3.1)。

在你的例子中,Ret(Args...)const and Ret(Args...)volatile满足最后一种情况。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

自己的 std::is_function 实现 的相关文章

  • 模板类包装任意类型/非类型模板类

    假设我有一个模板类base和一个班级wrapper其中包含一个实例化成员base 我想定义班级wrapper这样它依赖于模板参数包 该参数包只是 传递 给实例化成员base 例如 考虑下面的代码 它工作得很好 include
  • 我可以使用反射更改 C# 中的私有只读字段吗?

    我想知道 由于很多事情都可以使用反射完成 我可以在构造函数完成执行后更改私有只读字段吗 注 只是好奇 public class Foo private readonly int bar public Foo int num bar num
  • 高级 Win32 图像文件 I/O?

    我想在 Windows C 应用程序中将图像文件读入内存 什么是一个相当简单的解决方案 也许类似于 IOS 提供的UIImage 我希望支持合理数量的文件格式 我需要为图像处理的位图提供一些低级访问权限 我在互联网上阅读了很多内容 看起来
  • 如何知道并加载特定文件夹中的所有图像?

    我有一个应用程序 C Builder 6 0 需要知道特定文件夹中的图像总数 然后我必须加载它们 在 ImageList 或 ComboBoxEx 中 或任何其他控件中 我怎样才能做到这一点 我知道如何在控件中加载图像 或保存在 TList
  • 如何向 UWP 项目添加 .NET dll 引用?

    我有几个适用于 NETv4 x 的 NET dll 项目 我将版本更改为 4 6 1 并重新构建 没有出现问题 当我尝试从 UWP 项目向它们添加引用时 出现错误 项目的目标是 NETCore 而文件引用的目标是 NET框架 这不是受支持的
  • 如何调试参数化 SQL 查询

    我使用 C 连接到数据库 然后使用 Ad hoc SQL 来获取数据 这个简单的 SQL 查询非常方便调试 因为我可以记录 SQL 查询字符串 如果我使用参数化 SQL 查询命令 有没有办法记录 sql 查询字符串以进行调试 我想就是这样的
  • 将 2D 数组映射到 1D 数组

    我想用一维数组来表示一个二维数组 函数将传递两个索引 x y 和要存储的值 这两个索引代表一维数组的单个元素 并相应地设置它 我知道一维数组需要具有 arrayWidth arrayHeight 的大小 但我不知道如何设置每个元素 例如 如
  • __FUNCTION__ 宏的 C# 版本

    有人对 C FUNCTION 宏的 C 版本有好的解决方案吗 编译器似乎不喜欢它 尝试使用这个代替 System Reflection MethodBase GetCurrentMethod Name C 没有 LINE or FUNCTI
  • 如何避免选择项目时 winforms 树视图图标发生变化

    我正在一个小型 C Winforms 应用程序中尝试树视图 我已经以编程方式将 ImageList 分配给树视图 并且所有节点都很好地显示了它们的图标 but当我单击一个节点时 它的图标会发生变化 变为 ImageList 中的第一个图像
  • 根据拦截和返回值自动重试客户端WCF调用

    是否可以拦截 WCF 调用的结果并重试该操作 例如 操作的返回值可能包含状态代码 指示我传递到原始调用的会话令牌已过期 在这种情况下 我可以检索新的会话令牌并使用新的会话令牌重试调用 是否可以通过使用 WCF 拦截返回值 检查它 然后以对操
  • 成员初始值设定项列表中的求值顺序是什么?

    我有一个带有一些参数的构造函数 我假设它们是按照列出的顺序初始化的 但在一种情况下 它们似乎是按相反的顺序初始化的 导致中止 当我反转参数时 程序停止中止 下面是我正在使用的语法的示例 a 之前需要初始化b 在这种情况下 你能保证这个初始化
  • 防止复制构造和返回值引用的分配

    如果我有一个函数返回对类实例的引用 但我无法控制其源 比如说list
  • 为什么以下代码不允许我使用 fgets 获取用户输入但可以使用 scanf?

    这是一个更大程序的简短摘录 但该程序的其余部分无关紧要 因为我认为我能够隔离该问题 我怀疑这与我使用 fgets 的方式有关 我读过 最好使用 fgets 而不是 scanf 但我似乎无法让它在这里正常工作 当我使用以下代码时 程序不会给我
  • OpenMP C 程序运行速度比顺序代码慢

    我是 OpenMP 的新手 正在尝试并行化 Jarvis 的算法 然而事实证明 与顺序代码相比 并行程序花费的时间要长 2 3 倍 难道问题本身就不能并行化吗 或者我并行化它的方式有问题 这是我针对该问题的 openMP 程序 其中有 2
  • 通过 MSBuild 调用 cl.exe 时无限期挂起

    我正在尝试在我的 主要是 C 项目上运行 MSBuild 想象一下一个非常庞大的代码库 Visual Studio 2015 是有问题的工具集 Windows 7 SP1 和 VS 2015 更新 2 即使使用 m 1 从而迫使它仅使用一个
  • 为什么我不能在扩展 List 的类中调用 OrderBy?

    我有一堂课 Deck 其中包含一个名为的方法Shuffle 我正在致力于重构Deck延长List
  • C# - 为什么我需要初始化 [Out] 参数

    我有几个从本机 dll 导入的方法 使用以下语法 internal static class DllClass DllImport Example dll EntryPoint ExampleFunction public static e
  • 从 C# 中的 .NET SecureString 读取单个字符?

    WPF 的PasswordBox 返回一个SecureString 它对窥探者隐藏密码 问题是你最终必须获得密码的值 而我在网上找到的建议都涉及将值复制到字符串中 这会让你回到窥探者的问题 IntPtr bstr Marshal Secur
  • 如何仅更改 DateTime 的日期部分,同时保留时间部分?

    我在代码中使用了很多 DateTime 我想将这些日期时间更改为我的特定日期并保留 时间 1 2012 02 02 06 00 00 gt 2015 12 12 06 00 00 2 2013 02 02 12 00 00 gt 2015
  • Windows 上 libcurl 的静态库[重复]

    这个问题在这里已经有答案了 如何将此库 libcurl 静态链接到 exe 我努力了 disable share enable static 没有帮助 我使用的是MingW32 有没有一种简单的方法来静态链接这个库 这样我的应用程序就不再有

随机推荐

  • 如何以统一的方式从.NET打印Office文档?

    使用 Microsoft interOp 对象 我可以通过编程方式打印 Word 或 Excel 文档 有没有更简单 统一的方法来以编程方式打印所有类型的文档 txt doc xls pdf 等 Microsoft 默认使用 DDE 从办公
  • 如何使用反射获取构造函数作为 MethodInfo

    构造函数如下所示 public NameAndValue string name string value 我需要使用反射将其作为 MethodInfo 获取 它尝试了以下操作 但没有找到构造函数 GetMethod回报null Metho
  • 当字段不完整时使用 Circe 解码 Json

    我有一份 json 格式的成绩单 里面有一堆单词 words duration 123 name world time 234 speaker null 我一直在使用 Circe 来编码 解码 Json 在这个特殊情况下 import io
  • 了解 OpenGL 引擎的 GLTF2.0 文件的蒙皮部分

    我有一个简单的混合器模型 它由三个网格组成 三个网格各控制一个网格 动画只是骨骼围绕 y 轴稍微旋转立方体并返回 中心骨骼是两个外部骨骼的父骨骼 然后 我使用 GLTF2 0 文本版本 导出插件导出此场景 现在尝试将其导入到我新制作的 op
  • Hbase 架构嵌套实体

    有谁有关于如何创建带有嵌套实体的 Hbase 表的示例吗 Example UserName string SSN string Books collection 例如 书籍收藏看起来像这样 Books isbn title etc 我找不到
  • Python、Java、C# 和并行算法

    我想知道 尝试用 Python 创建并行算法有什么优点吗 假设我想研究一种新的并行算法 并且我可以选择 C C 和 Python 那么其中一个或另一个 更好 来测试和基准测试这些算法 或者它们只是 功能上等效 而且除了与解释 编译 虚拟机语
  • Swagger springfox 在 POST 上隐藏模型属性

    想知道如何在 POST 时隐藏 Swagger 中的模型属性 我尝试过Swagger springmvc 0 9 3 和Springfox 支持swagger规范2 0 但均无济于事 问题是我想在通过 Swagger 的 GET 请求中看到
  • 从不同线程调用

    我不敢相信 这在我的其他应用程序中有效 但在这个具有类似结构的应用程序中 它不起作用 public string ListAdd set if listView1 InvokeRequired this Invoke MethodInvok
  • MySQL选择昨天的日期

    如何显示和统计日期为昨天的值 我用了time 在数据库中插入日期 例子 URL google com youtube com google com youtube com test com youtube com DateVisited 1
  • 在 Java 中打印数组

    我正在编写一个方法来打印它传递的每个对象 通过调用该方法可以正常工作Object toString 方法适用于对象 但不适用于数组 我可以找出它是否是一个数组Object getClass isArray 方法 但我不知道如何投射它 int
  • 继承的 CSS 属性的特殊性

    继承属性收到的 CSS 特异性级别是多少 我通读了有关 CSS 特异性的 W3 建议 因此我了解如何计算直接针对同一元素的 css 规则的不同特异性 但我没有看到其中提到继承属性的特异性级别 特别是 我遇到的问题与标题元素有关 尽管我很有兴
  • wpf按钮背景图片

    我有一个带有 5 个按钮的 wpf 页面 所有 5 个按钮必须具有相同的大小 并且必须具有相同的背景图像 这个怎么做 问候 卡恩 使用样式 这将自动应用于all窗口中的按钮
  • 如何在ansible命令中传递用户/密码

    我想使用 Ansible 作为另一个 Python 软件的一部分 在该软件中 我有一个主机列表及其用户 密码 有没有办法将 SSH 连接的用户 密码传递给 Ansible ad hoc 命令或以加密方式将其写入任何文件中 还是我理解错了 唯
  • 如何将变量从 awk 传递到 shell 命令?

    我正在尝试从 awk 中为文件的每一行运行 shell 命令 并且 shell 命令需要一个输入参数 我尝试使用system 但它无法识别输入参数 该文件的每一行都是一个文件的地址 我想运行一个命令来处理该文件 因此 对于一个简单的示例 我
  • 实体框架 - 我应该如何实例化我的“实体”对象

    我是实体框架和 ASP Net MVC 的新手 主要从教程中学习 但对两者都没有深入的了解 我确实有 Net 2 0 ADO Net 和 WebForms 的经验 我当前的怀疑来自于我实例化实体对象的方式 基本上我在我的控制器中这样做 pu
  • Python 数组重塑形状数组问题(无,192)

    我有这个错误 我不知道如何重塑有尺寸的地方None Exception Error when checking expected input 1 to have shape None 192 but got array with shape
  • 在 Rails 3.1 的开发模式下启用图像缓存

    在 Rails 3 1 开发模式中 使用资产管道时 从资产 图像中提供的图像会附带响应标头 缓存控制 必须重新验证 这意味着 Google Chrome 似乎只有 Chrome 将尝试多次重新获取图像 即使在单个页面视图期间也是如此 这导致
  • SSL_connect 返回=1 errno=0 状态=错误:在 ruby​​ 和 Ubuntu 14.04 中证书验证失败

    我有一个与第三方网络服务集成的 Rails 应用程序 自最初开发以来 它多年来一直运行良好 由于某种意想不到的原因 它突然停止工作了 我想说我们没有更改代码中的任何内容 唯一可以与之相关的是我们的 Letscrypt SSL 证书已过期并且
  • 使用 Entity Framework 4.0 中的上下文确定实体的主键

    我有几个从实体框架数据模型生成的实体 在 edmx 文件中 我可以看到标记为主键的属性 我的 POCO 自定义上下文是从此模板和 T4 模板生成的 我正在寻找一种方法来使用 Entity Framework 4 0 的反射来找出实体的主键
  • 自己的 std::is_function 实现

    建议here http en cppreference com w cpp types is function按以下方式实施 template