【问题标题】:Clarification on how functions can work and correlate with Classes阐明函数如何工作以及如何与类关联
【发布时间】:2018-07-31 15:04:26
【问题描述】:

所以当我遇到这行代码时,我正在关注关于类和函数的教程,这让我质疑我对这个主题的理解。这是看起来像代码的东西:

FBullCowGame BCGame;
std::string X
FBullsAndCows Count = BCGame.Counting(X);

现在根据我的理解,BCGame 是一个在所有 FBullCowGame 范围内创建的对象,现在我无法理解的是 Counting(X) 如何将 x 值从这个 cpp 文件发送到位于FBullCowGame。问题来了:

1) function()不仅可以用于初始化函数吗?就像这个实例一样,它似乎发送 x 的值以使其成为函数值。

2) 我对对象的理解是否有缺陷或错误?

3) 如果function() 可以用于发送和接收值,它是否像初始化函数并获取函数的值一样工作?还是这种理解是错误的?

【问题讨论】:

  • 你最好抓住a good text book,从头开始了解类和函数的基础知识。

标签: c++ function object scope


【解决方案1】:

在这个答案中,我假设代码正在运行

> 1) Is the function() can be used more than just initializing the
> function? like for this instance it seems sending the value of x to
> make it the function value

它没有初始化函数(在 C++ 中甚至没有这个概念),函数是用字符串参数声明和定义的。当您在该函数(您的 X)上传递一个字符串时,如果它想对其执行某些操作(可能是进程或其他什么?),则由该函数决定。

2) Is my understanding of objects is flawed or wrong?

我想你已经关注了第一个评论者

3) If the function() can be used for sending and receiving value does it works like its initialized the function and gets the value of the function? Or is this understanding wrong?

您不了解initialize 是什么。该函数只是接收您传递给它的内容(您的X)然后处理它,然后返回FBullsAndCows 类型的值,然后将其分配给Count

无论如何,最好的建议是买一本好书。
请看这里: The Definitive C++ Book Guide and List

【讨论】:

  • 好的,这意味着该函数的参数现在是变量 X 是吗?或者它只是像赋予变量值的含义一样传递?
  • @HahaWwkw 后者。它只是传递 X 的值。除非参数采用字符串类型的引用。阅读有关传递引用的信息。
  • @HahaWwkw 很好,如果这回答了你的问题或澄清了你。您可以将此标记为已回答。谢谢。欢迎来到stackoverflow
猜你喜欢
  • 2020-06-07
  • 2020-01-25
  • 2011-08-04
  • 2022-12-11
  • 1970-01-01
  • 1970-01-01
  • 2018-04-27
  • 2010-09-29
  • 1970-01-01
相关资源
最近更新 更多