污染全局命名空间

2024-03-25

我想这里的大多数 C++ 程序员都会同意污染全局命名空间是一个坏主意,但是有时这条规则可以被忽略吗?

例如,我有一个需要在特定应用程序中使用的类型 - 我应该这样定义它:

mytypes.h

typedef int MY_TYPE;

foo.cpp

MY_TYPE myType;

或者使用命名空间:

mytypes.h

namespace ns {
typedef int MY_TYPE;
}

foo.cpp

ns::MY_TYPE myType;
...
using namespace ns;
MY_TYPE myType;

你喜欢哪个?有时可以接受使用第一种方法吗?


您可以在单独的命名空间中定义您的类型,并使用

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

污染全局命名空间 的相关文章

  • 类型转换 sockaddr 结构

    我正在尝试学习网络编程 并在这个过程中学习C 我对结构感到困惑sockaddr这是一个通用地址 并且sockaddr in 我的书里是这么说的 因此 我们可以填写 sockaddr in 的字段 然后强制转换 a 指向 它指向 指向 soc
  • 加权 Voronoi 的 CGAL 2D APOLLONIUS 图 - 如何生成和获取面和顶点?

    我正在尝试根据阿波罗尼乌斯图生成加权沃罗诺伊 我正在使用 CGAL 库 我找不到如何从 apollonius 获取面和顶点的好例子 我有以下类型定义 typedef double NT typedef CGAL Cartesian lt N
  • 如何使用movntdqa避免缓存污染?

    我正在尝试编写一个 memcpy 函数 该函数不会将源内存加载到 CPU 缓存中 目的是避免缓存污染 下面的 memcpy 函数可以工作 但会像标准 memcpy 一样污染缓存 我正在使用带有 Visual C 2008 Express 的
  • 每个 CPU 核心处于 C0 电源状态的时间

    任何帮助弄清楚如何做到这一点都会很棒 在过去一秒内 每个 CPU 核心处于 C0 电源状态的时间有多少 这是针对 Mac 应用程序的 因此需要 Objective C cocoa 和 c OS X 没有任何公开 CPU c 状态的 API
  • 如何将 pem 公钥转换为 openssl RSA* 结构

    假设我必须像这样公开 pem 密钥 BEGIN PUBLIC KEY MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC7vbqajDw4o6gJy8UtmIbkcpnk O3Kwc4qsEnSZp TR fQi
  • VBA 中的 VSTO:AddIn.Object 有时不返回任何内容 (null)

    Given VSTO 插件 An override object RequestComAddInAutomationService 它返回一个名为的类的实例Facade在我的场景中 Excel 2007 中的 VBA 宏可访问AddIn O
  • WPF MVVM将DataTable绑定到DataGrid不显示数据

    我有一个简单的控件 其中包含一个 DataGrid 其中 ItemsSource 绑定到 DataTable 当我填充 DataTable 时 我可以看到 DataGrid 中添加了行 但没有显示任何数据 我没有为此 DataGrid 使用
  • 如何以编程方式确定 C 中 int 数据的最大和最小限制?

    我正在尝试 K R 的练习 2 1 练习内容如下 编写一个程序来确定范围char short int and long变量 两者signed and unsigned 通过从标准标题打印适当的值并通过直接计算 如果计算它们会更困难 确定各种
  • 我应该使用函数还是无状态函子?

    这两段代码做同样的事情 如您所见 它将用于排序函数 哪个更好 我通常写后一种 但我看到一些程序员像以前那样做 struct val lessthan binary function
  • 平衡两轮机器人而不使其向前/向后漂移

    我正在尝试设计一个控制器来平衡 2 轮机器人 约 13 公斤 并使其能够抵抗外力 例如 如果有人踢它 它不应该掉落 也不应该无限期地向前 向后漂移 我对大多数控制技术 LQR 滑模控制 PID 等 都很有经验 但我在网上看到大多数人使用 L
  • Xamarin 无法从异步获取实例

    我编写了一个通过蓝牙连接到 ESP32 的 Xamarin Forms 应用程序 现在我想从 MainPage xaml 页面的 CustomControl JoystickControl 获取值 我已经这样尝试过了 MainPage xa
  • 未定义条件编译符号

    我无法让 Visual Studio 按照我的预期运行 我创建了 2 个配置文件 一个定义了符号 FOO 另一个定义了符号 BAR 我有这个代码 static class MyClass if FOO public static strin
  • NHibernate 中具有不同类型答案的问题

    我正在尝试找到一个问卷问题的简洁解决方案 假设我有一个Questionnaire类有一个集合Answers e g public class Questionnaire public virtual ISet
  • 标准头文件中的 C 编译器错误 - 未定义的 C++ 定义

    我正在尝试编译 C 程序 但收到许多错误 这些错误是在标准 C 头文件 inttypes h stdio h stat h 等 中遇到的 错误的来源是以下未定义的常量 BEGIN DECLS END DECLS BEGIN NAMESPAC
  • 专家 C#/.Net/WPF 开发人员应该了解哪些知识? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 为什么 MISRA:2012 需要函数原型?

    我想知道为什么 MISRA 2012 需要函数原型 在下面的示例中 这两个原型并不是真正必要的 include
  • gcc 中的“假设”子句

    gcc 最新版本 4 8 4 9 是否有类似于以下的 假设 子句 assume 内置icc支持吗 例如 assume n 8 0 从 gcc 4 8 2 开始 gcc 中没有 assume 的等效项 我不知道为什么 这会非常有用 马夫索建议
  • 什么是多重重继承?

    我将以下称为 多重重新继承 直接继承一个类一次 并通过继承其一个或多个后代来间接继承一次或多次 通过继承一个类的两个或多个后代来间接继承一个类两次或多次 我想知道它是否存在以及如何明确访问嵌入的子对象 1 Professional C 2n
  • 使用 LINQ to SQL 的 .NET 架构的最佳设计实践(DAL 必要吗?我们真的可以使用 POCO吗?要采用的设计模式吗?)

    我避免在 net arch n 层架构上编写看起来像是另一个线程的内容 但请耐心等待 希望我和其他人一样 在选择用于企业应用程序的架构时 考虑到当今的趋势和新兴技术 仍然没有 100 满意或不清楚应采取的最佳方法 我想我正在寻求大众社区对方
  • jquery ajax“发布”调用

    我是 jQuery 和 Ajax 的新手 并且在 发布 方面遇到问题 我正在使用 jQuery Ajax post 调用将数据保存到数据库 当我尝试保存数据时 它将 null 传递给我的 C 方法 jQuery 看起来像这样 functio

随机推荐

  • 如何以干净的方式创建通过外键与 Room DB 相关的行和子项?

    这个问题在某种程度上与我的最后一个问题 https stackoverflow com q 69384937 3692177 因为这是同一个项目 但现在我正努力向前迈进一步 所以 在我之前的问题中 我只有一张桌子 这次我有两个表 新的第二个
  • 为什么 git log 在传递给寻呼机时不显示 HEAD 和分支

    当传递给寻呼机时 git log less watch git log https stackoverflow com q 62803231 9157799等 则 HEAD gt master origin master origin HE
  • Pylance 无法识别新安装的 pip 软件包

    我在尝试从 pip 导入新安装的软件包时收到以下错误 无法解析导入 皮兰斯 报告缺少进口 重新启动 VS Code 后 Pylance 似乎能够识别该包 有没有办法解决这个问题 因为它很烦人 当 Pylance 没有立即检测到该模块时 就会
  • Greasemonkey 中的函数未定义或访问对象的权限被拒绝

    我正在开发一个 Greasemonkey 脚本 该脚本将一个按钮注入聊天系统 Gitter 允许您发送默认消息 不是垃圾邮件 管理员可以发送类似行为准则的消息 假设我已经注入了一个按钮
  • 为 Flask-CORS 指定域

    我有一个 Python 脚本作为 Web api 许多域会调用它来获取他们想要的数据 因此 为了使其可行 我需要启用 CORS 我通读了 Flask 文档 但没有找到指定多个域以允许 CORS 的方法 以下是启用 CORS 的代码片段 fr
  • 访问 VBA 循环(无响应)

    我正在循环访问记录集以执行一些基本功能或编辑 通常 对于包含超过 50 条记录的记录集 访问将停止响应 I have me repaint在循环命令之前 但窗口始终冻结并且访问标题栏显示 未响应 知道如何解决这个问题吗 Thanks Dav
  • 缺少 google-services.json 并运行“make bootstrap”(Kickstarter 应用程序 android studio)

    当我尝试运行该应用程序时 遇到了此谷歌服务缺失错误来自 GitHub 的 Kickstarter https github com kickstarter android oss在 Android Studio 中 试图寻找答案 我发现我应
  • 将用户输入循环附加到列表中

    我是 python 编程新手 正在用它做一些实验 希望我的问题不太愚蠢 我正在编写一个小程序 将输入添加到列表中 并使用 while 循环在输入等于 4 时打印它 问题是它永远不会停止添加输入和打印列表 我的代码是 S input L wh
  • 根据查找 NP 头的规则在 NLTK 和 stanford 解析中查找名词短语的头

    一般来说 名词短语的中心词是位于 NP 最右边的名词 如下所示 树是父 NP 的中心词 所以 ROOT S NP PP
  • 如何在Python中将多行输入读取到二维数组中

    我在 python 中遇到了一个问题 要读取的二维数组的输入格式是 3 number of rows and columns of a square matrix 1 2 3 first row 3 4 6 second row 4 6 3
  • 从另一个 ViewController 调用方法

    我有一个 ViewControllerA 和一个 ViewControllerB 我想从 ViewControllerB 调用 ViewControllerA 的方法 在 ViewControllerA 中存在一个方法 NSMutableA
  • 使用 matplotlib plt.show() 绘图不可见

    我对 Python 和 Linux 非常陌生 我需要帮助 我尝试使用 matplotlib 按以下方式显示简单的绘图 from matplotlib import pyplot as plt plt plot 5 6 7 8 7 3 8 3
  • 我如何使用纯javascript解析远程html页面

    我需要解析远程 html 页面 例如 www mywesite com home 我如何获取此网站 html 页面源以及如何解析此页面 html是这样的 div class my class1 a href home link id 1 h
  • iOS 7.1 中的 safari 全屏,带有最小的 ui 元标记

    我在多个网站 包括一些 stackoverflow 问题 上读到 iOS 7 1 Safari 将会有一个 minim ui 元标记 所以今天我更新了我的iPad 但似乎没有效果 任何人都可以确认这应该有效吗 这是我的元标记 此选项仅适用于
  • celery-django 找不到设置

    我有一个 Django 项目 使用Celery http pypi python org pypi django celery用于运行异步任务 我正在 Windows XP 计算机上进行开发 启动我的 Django 服务器 python m
  • android ListView不会突出显示所选行

    在我的应用程序中 我从服务器检索用户的播放列表 并感受到ListView与数据 问题是 ListView不突出显示单击的行 为了防止愤怒的评论告诉我我不使用搜索 我尝试过以下方法 将我行中的按钮设置为不可聚焦 通过代码和 XML 设置 li
  • Java 本机接口 (JNI) 是否受 C++ ABI 兼容性问题影响?

    Java 本机接口 JNI 是否受 C ABI 兼容性问题影响 我正在开发一个 Java 应用程序 我想使用 Java 本机接口 JNI 来调用 C 库中的函数 我可以访问 C 库的代码 并且可以根据需要重建它 例如 我可以静态链接 C 运
  • 如何使用现有的 solr 核心数据创建 solr 核心?

    Solr 1 4 企业搜索服务器建议对核心副本进行大量更新 然后将其交换为主核心 我正在执行以下步骤 创建准备核心 执行索引更新 然后在准备核心上提交 优化 交换主核心和预备核心 卸载准备核心 我遇到的问题是 步骤 1 中创建的核心中没有任
  • Enlive 模板 – 添加到头部

    我的应用程序的某些页面将有自己的 js css 包含 所以我想知道如何使用 Enlive 将这些资源添加到 html 文档的头部部分 我发现 append 变压器 但没有不自动转义的 html append 或者什么是正确的方法来做到这一点
  • 污染全局命名空间

    我想这里的大多数 C 程序员都会同意污染全局命名空间是一个坏主意 但是有时这条规则可以被忽略吗 例如 我有一个需要在特定应用程序中使用的类型 我应该这样定义它 mytypes h typedef int MY TYPE foo cpp MY