问题标签 [typedef]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - “struct foo*”和“foo*”之间的区别,其中 foo 是一个结构?
在 C 中,如果 foo 是一个结构,那么写“struct foo”而不是“foo”有区别吗?
例如:
谢谢/埃里克
c++ - 继承而不是 typedef
C++ 无法从 typedef 或 typedef 模板类中生成模板。我知道如果我继承并使我的类成为模板,它将起作用。
例子:
这样做是有利的,以便我可以“伪造” typedef 还是有更好的方法来做到这一点?
c++ - 内置类型的析构函数(int、char 等)
在 C++ 中,以下代码给出了编译器错误:
这段代码几乎相同,我只是将 int 类型定义为另一种类型,然后发生了一些神奇的事情:
为什么第二个代码有效?一个 int 是否仅仅因为它已被类型定义而得到一个析构函数?
如果您想知道为什么有人愿意这样做:这来自重构 C++ 代码。我们正在删除标准堆并用自制池替换它。这需要我们调用placement-new 和析构函数。我知道为原始类型调用析构函数是没有用的,但是我们仍然希望在代码中使用它们,以防我们以后用真正的类替换 POD。
发现裸 int 不起作用但 typedefed 起作用是相当令人惊讶的。
顺便说一句 - 我有一个涉及模板功能的解决方案。我们只是在模板中键入定义,一切都很好。
c++ - 我什么时候应该在 C++ 中使用 typedef?
在我多年的 C++ (MFC) 编程中,我从来没有觉得需要使用typedef
,所以我真的不知道它是用来做什么的。我应该在哪里使用它?typedef
是否存在首选使用的实际情况?或者这真的更像是一个特定于 C 的关键字吗?
c++ - 我什么时候不需要 typedef?
我遇到了一些代码阅读
我听说这些结构源自 C。在 C++ 中,您可以轻松编写
真的吗?你什么时候需要第一个变种?
namespaces - 在命名空间声明之后立即添加“使用命名空间”是否可以接受?
我有一个包含一些类型定义的小命名空间,我用它来使我的代码看起来更干净。但是,我不想为每个使用其中一种类型的文件添加“使用命名空间...”行,毕竟我已经为文件添加了#include。
我的文件.cpp:
typedefs.h:
在命名空间声明之后立即添加“使用命名空间”行是否可以接受?如果不是,为什么不呢?
c - C:修改通过 typedef 传递的 int 指针的最佳方法是什么?
我有一个 typedef int my_type 并且我有一个看起来像的函数
我应该如何使用这个函数来修改 x 使用最佳实践?
c++ - typedef 标准容器?
我想做
但是那个错误阻止了我。我该怎么做呢?
c# - typedef 等效于 c# 中的重载
我有一堆代码,其中包含许多具有不同含义的整数(我宁愿使用通用解决方案,但对于一个具体示例:每月的一天与一年中的月份与年份等)。我希望能够根据这些含义重载类构造函数。
例如
现在显然这行不通,但如果我可以定义一个类型(不仅仅是别名),int
除了这样的名称之外,它是一个类型:
我可以做我需要的重载,让类型系统跟踪什么是什么。特别是,这将允许我确保值不会混淆,例如从函数返回的值作为年份不用作月份中的日期。
在 c# 中是否有任何方法class
或struct
包装器可以做到这一点?
如果该解决方案也适用于浮点数和双精度数,那就太好了。
c++ - typedef 的有效使用?
我有一个char
通过网络发送的(即字节)缓冲区。在将来的某个时候,我可能想将缓冲区切换为不同的类型,例如unsigned char
or short
。我一直在考虑做这样的事情:
每当我对缓冲区元素做任何事情时,我都会将其声明为bufferElementType
而不是char
. 这样我可以通过改变这个typedef来切换到另一种类型(当然不会那么简单,但至少可以很容易地识别出需要修改的地方......bufferElementType
附近会有一个)。
这是对 typedef 的有效/良好使用吗?不值得麻烦吗?将来某个时候会不会让我头疼?它会让维护程序员讨厌我吗?
我已经阅读了When Should I Use Typedef In C++,但没有人真正涵盖这一点。