成员名称和构造函数参数名称之间的冲突[重复]

2023-11-22

可能的重复:
C++ 中的成员与方法参数访问

我有一个班级,有一些成员,比如x, y, width and height。在它的构造函数中,我不会这样做:

A::A(int x, int y, int width, int height)
{
    x = x;
    y = y;
    width = width;
    height = height;
}

当用 g++ 编译时,这并没有真正意义x, y, width, and height变成奇怪的值(例如-1405737648).

解决这些命名冲突的最佳方法是什么?


您可以使用具有相同名称的初始化列表:

A::A(int x, int y, int width, int height) :
    x(x),
    y(y),
    width(width),
    height(height)
{
}

如果您不想使用相同的名称,另一种方法是使用不同的名称。我想到了一些匈牙利表示法的变体(我可能对此有些讨厌):

//data members
int x_;
int y_;
int width_;
int height_;
//constructor
A::A(int x, int y, int width, int height) :
    x_(x),
    y_(y),
    width_(width),
    height_(height)
{
}

但第一个建议并没有什么问题。

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

成员名称和构造函数参数名称之间的冲突[重复] 的相关文章

  • C#中如何检测字符串是否为货币

    通常当我需要转换时currency string 如 1200 55 z 或 1 249 到十进制值我这样做 if currencyString Contains z decimal value Decimal Parse dataToCh
  • 从 SQL 数据库获取日期时间

    我的数据库表中有一个 DateTime 记录 我编写一个查询从数据库中获取它 string command2 select Last Modified from Company Data where Company Name Descrip
  • Web UI 中的 .Result 出现死锁

    我正在阅读以下主题http blog stephencleary com 2012 07 dont block on async code html http blog stephencleary com 2012 07 dont bloc
  • 如何向 UWP 项目添加 .NET dll 引用?

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

    现在我首先要说的是 这确实是一项任务 然而 在我遇到 Linq to XML 语法之前 我几乎已经完成了它 我有 2 个课程 曲目和 CD 现在作为作业的一部分 我创建了一张 CD 然后向其中添加了一些曲目 在搜索了大量完美解释了如何从 x
  • 处理 LINQ sum 表达式中的 null

    我正在使用 LINQ 查询来查找列的总和 并且在少数情况下该值有可能为空 我现在使用的查询是 int score dbContext domainmaps Where p gt p SchoolId schoolid Sum v gt v
  • 实体框架代码优先 - 在另一个文件中配置

    使用 Fluent API 将表到实体的映射分开的最佳方法是什么 以便它全部位于单独的类中 而不是内联在 OnModelCreating 方法中 我目前在做什么 public class FooContext DbContext prote
  • Linq Where 本地计数器关闭在 VS watch 中的结果不同

    我尝试删除前 3 个元素array与 LinQWhere扩展功能 这是一个例子 var array new 1 2 3 4 5 6 7 8 9 var count 3 var deletedTest1 0 var test1 array W
  • 身份未映射异常

    System Security Principal IdentityNotMappedException 无法转换部分或全部身份引用 该错误仅在应用程序注册后出现一次 当 SecurityIdentifier 无法映射时 例如 返回 Ide
  • glDrawElements 只绘制半个四边形

    这是我的功能 void Object draw2 if mIsInitialised return Tell OpenGL about our vertex and normal data glEnableClientState GL VE
  • 成员初始值设定项列表中的求值顺序是什么?

    我有一个带有一些参数的构造函数 我假设它们是按照列出的顺序初始化的 但在一种情况下 它们似乎是按相反的顺序初始化的 导致中止 当我反转参数时 程序停止中止 下面是我正在使用的语法的示例 a 之前需要初始化b 在这种情况下 你能保证这个初始化
  • C#:使用 System.Text 和 System.Text.RegularExpressions 之间的区别

    在 ASP NET C 应用程序中 我注意到为了使用 Regex 和 StringBuilder 我必须将两者都放在 using System Text using System Text RegularExpressions 从简单的角度
  • 推送 Lua 表

    我已经创建了一个Lua表C 但我不知道如何将该表推入堆栈顶部 以便我可以将其传递给 Lua 函数 有谁知道如何做到这一点 这是我当前的代码 lua createtable state libraries size 0 int table i
  • 使用 AutoMapper 进行 LINQ GroupBy 聚合

    试图让查询工作 但老实说不确定如何 或者是否可能 进行它 因为我尝试过的一切都不起作用 共查询6个表 Person PersonVote PersonCategory Category City FirstAdminDivision Per
  • 如何从枚举中选择随机值?

    给定 C 中的任意枚举 如何选择随机值 我没有找到这个非常基本的问题 我会在一分钟内发布我的答案作为任何人的参考 但请随意发布你自己的答案 Array values Enum GetValues typeof Bar Random rand
  • 便携式终端

    有没有办法根据所使用的操作系统自动使用正确的 EOL 字符 我在想类似的事情std eol 我知道使用预处理器指令非常容易 但很好奇它是否已经可用 我感兴趣的是 我的应用程序中通常有一些消息 稍后我会将这些消息组合成一个字符串 并且我希望将
  • 如何使复选框不可选择?

    我想知道你是怎么做的CheckBox在c 中无法选择 我认为这会是类似 SetSelectable false 之类的东西 但我似乎看不到该方法 I found CanSelect但这似乎是只读属性 您可以设置自动检查 http msdn
  • 如何仅更改 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
  • C++0x 中的新 unicode 字符

    我正在构建一个 API 它允许我获取各种编码的字符串 包括 utf8 utf16 utf32 和 wchar t 根据操作系统 可能是 utf32 或 utf16 新的 C 标准引入了新类型char16 t and char32 t没有这么
  • 在 C# 中读取/写入命令行程序

    我正在尝试与 C 的命令行程序进行对话 它是一个情绪分析器 它的工作原理如下 CMD gt java jar analyser jar gt Starting analyser 这是我想从我的 C 程序插入内容的地方 例如 I love y

随机推荐

  • 如何以编程方式创建包含内容的 Google 文档电子表格?

    我发现了多个 StackOverflow 问题 涉及如何使用谷歌电子表格 API 或更旧的 API 然而 这个电子表格 API 似乎是 gdata 库的一部分 据我了解 该库已被弃用 较新的 StackOverflow 答案展示如何使用 D
  • StoreKit:捕获失败的恢复?

    我正在实施应用内购买功能Restore button 我有一个全新测试用户设立 无需支付任何费用 当我点击恢复按钮并使用新的测试用户登录时 我无法捕获任何委托方法来告诉我恢复交易失败 因为没有什么可以恢复 唯一被调用的方法是 void pa
  • Android / Xamarin 项目中的自定义主题 - 操作栏的中心标题文本

    我在 Android Xamarin 项目中有自定义主题 我不能做的是 将标题设置为中间 并删除图标 添加带有菜单选项的菜单按钮 例如按钮设置 我尝试过设置属性 gt 重力到中心 但它不起作用
  • 如何在iPhone应用程序之间共享自定义数据?

    如果我制作两个 iPhone 应用程序 我如何 应该在它们之间共享自定义数据 不是联系人之类的数据 Thanks 您可以采用两种不同的方式来解决此问题 1 您需要共享的数据是非持久性的 换句话说 您需要启动一个应用程序 其中包含一段可以执行
  • C# yandex 邮件发送错误 5.5.4 错误:先发送 AUTH 命令

    我尝试使用 C 和 yandex 发送邮件 但收到错误 错误 5 5 4 错误 先发送 AUTH 命令 这是我的代码 我尝试使用不同的端口 587 465 和 SMTP 主机 smtp yandex com tr smtp yandex c
  • 剃刀无效功能

    我有 Razor 函数 它输出一些数据 结果不返回任何内容 这是一个很长的故事 为什么要这样做 functions public static void SampleHelperMethod 我现在怎样才能在视图中调用它 我试过 MyFun
  • 在Java程序中使用结果集

    Resultset rs stmt executeQuery select count from feedsca group by score order by score 使用上面的 java 代码 我从名为 feedsCA 的表中检索行
  • java.concurrent.ReentrantLock - 为什么我们要多次获取相同的锁[重复]

    这个问题在这里已经有答案了 我知道如果使用 ReentrantLock 它允许同一线程多次获取同一锁 其内部有一个计数器来统计获取锁的次数 如果您两次获取同一个锁 则需要释放它两次 但我的问题是 为什么有人想要多次获取锁 一次获取就足够了吗
  • Android GLES20.glBlendEquation 不起作用?

    几周来我一直在尝试制作一个具有深度和法线贴图纹理的 2 5D 引擎 与这里使用的没什么不同Linky 在认为由于 ES 2 0 缺少 gl fragDepth 变量而无法在片段着色器中从纹理绘制深度图之后 我找到了一个 iOS 教程 其中他
  • 当 setUpClass 失败时,如何清理 Python UnitTest?

    假设我有以下 Python UnitTest import unittest def Test unittest TestCase classmethod def setUpClass cls Get some resources if e
  • iOS 视图变换动画

    我可能错过了一些简单的东西 但试图用图像视图做一个简单的 肯伯恩斯效果 首先是代码 UIView animateWithDuration 20 delay 2 options UIViewAnimationCurveLinear anima
  • 如何使用 LINQ 左连接多个表

    我正在尝试使用 LINQ 左连接三个表 我的 SQL 工作如下 Select j Id u FirstName u LastName u Role From Job j left join JobTranslator as jt on j
  • 如何使用 netfilter 挂钩在内核空间中回显数据包?

    我想在内核空间中回显一个数据包 我在这台机器上运行一个 echo 服务器 端口为 6000 现在 客户端在另一台机器上运行 向回显服务器发送数据 现在 我想做的是从内核空间回显数据包 我不想用数据包打扰服务器 它会从内核空间默默地回显 我在
  • C# 4.0 中的方法重载与可选参数[重复]

    这个问题在这里已经有答案了 哪一个更好 乍一看 可选参数似乎更好 更少的代码 更少的 XML 文档等 但为什么大多数 MSDN 库类使用重载而不是可选参数 当您选择使用可选参数 或重载 时 有什么特别需要注意的事情吗 C 4 0 中 可选参
  • 在 Javascript 中以 50 个小块执行 100K Promise

    我有一个函数可以对服务进行 REST 调用并返回一个承诺 让我们调用该函数 Execute 该函数采用 ID 并将 ID 作为 GET 参数发送到 REST 端点 该端点将 ID 与一些附加信息一起保存在 mongoDB 数据库中 在客户端
  • ggplot 图例不适用于scale_colour_manual

    我知道之前已经有人问过同样的问题 ggplot 图例 scale colour manual 不起作用 但问题涉及的数据集比我这里的数据集稍微复杂 答案建议重组数据 然后使用重组数据 但即使使用下面的简单数据 问题仍然存在 我无法解决它 因
  • 将图像从 FileReader 传递到 Angular 6 中的表单输入

    我尝试创建一个用户界面 其中有一个带有几个文本字段的表单 一个input type file and a div您可以将图像与表单的其余部分一起上传 我的目标 逻辑 使用相同的div放置图像或单击它并打开文件夹资源管理器 例如input t
  • EF Code First,将两个导航属性映射到同一对象类型

    如果我有一个User具有以下属性的类 public Guid UserPreferenceId get set public virtual DefaultUserPreference UserPreference get set publ
  • Android 静态 Application.getInstance()

    你能帮我解决这个情况吗 我们正在使用一个类的静态实例 该类扩展了 android 中的 Application public class MyClass extends Application public static MyClass g
  • 成员名称和构造函数参数名称之间的冲突[重复]

    这个问题在这里已经有答案了 可能的重复 C 中的成员与方法参数访问 我有一个班级 有一些成员 比如x y width and height 在它的构造函数中 我不会这样做 A A int x int y int width int heig