获取:错误C2668:'sqrt':对重载函数的不明确调用[重复]

2024-05-04

尝试根据教科书中给出的示例构建下面的源代码。 我使用的是 Visual Studio 2008。

编译器似乎不知道如何处理 sieve:

1>------ Rebuild All started: Project: fig21.40, Configuration: Debug Win32 ------
1>Deleting intermediate and output files for project 'fig21.40', configuration        'Debug|Win32'
1>Compiling...
1>fig21_40.cpp
1>c:\users\ocuk\documents\c++\chapter 21\fig21.40\fig21.40\fig21_40.cpp(27) : error C2668: 'sqrt' : ambiguous call to overloaded function
1>        c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(581): could be 'long double sqrt(long double)'
1>        c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(533): or       'float sqrt(float)'
1>        c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(128): or       'double sqrt(double)'
1>        while trying to match the argument list '(const int)'
1>Build log was saved at "file://c:\Users\ocuk\Documents\C++\Chapter 21\fig21.40\fig21.40\Debug\BuildLog.htm"
1>fig21.40 - 1 error(s), 0 warning(s)
========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========

code:

//Fig. 21.40: fig21_40.cpp
//Using a bitset to demonstrate the Sieve of Eratosthenses

#include <iostream>

using std::cin;
using std::cout;
using std::endl;

#include <iomanip>

using std::setw;

#include <bitset>   //bitset class definition
#include <cmath>    //sqrt prototype

int main()
{
const int size=1024;
int value;
std::bitset<size> sieve;

sieve.flip();

//perform Sieve of Eratosthenses
int finalBit = sqrt( sieve.size() ) + 1;

for(int i=2; i<finalBit; ++i)
    if(sieve.test(i))
        for(int j=2*i; j<size; j+=i)
            sieve.reset(j);

cout << "The prime numbers in the range 2 to 1023 are:\n";

//display prime numbers in range 2-1023
for(int k=2, counter=0; k<size; ++k)

    if(sieve.test(k)){
        cout <<setw(5)<<k;
        if(++counter % 12 ==0)
            cout << '\n';
    }//end outer if

cout << endl;

//get value from user to determine whether value is prime
cout << "\nEnter a value from 1 to 1023(-1 to end): ";
cin>>value;

while(value != -1){
    if(sieve[value])
        cout << value << " is a prime number\n";
    else
        cout << value << " is not a prime number\n";

    cout << "\nEnter a value from 2 to 1023 (-1 to end): ";
    cin >> value;
}//end while



return 0;
}

我认为这是因为在新版本中C++, sqrt超载(参数可以是double, float or long double) 然后你传入一个 int 。只需将参数投射到double明确地说:

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

获取:错误C2668:'sqrt':对重载函数的不明确调用[重复] 的相关文章

  • 如何检查图像对象与资源中的图像对象是否相同?

    所以我试图创建一个简单的程序 只需在单击图片框中更改图片即可 我目前只使用两张图片 所以我的图片框单击事件函数的代码 看起来像这样 private void pictureBox1 Click object sender EventArgs
  • 如何验证文件名称在 Windows 中是否有效?

    是否有一个 Windows API 函数可以将字符串值传递给该函数 该函数将返回一个指示文件名是否有效的值 我需要验证文件名是否有效 并且我正在寻找一种简单的方法来完成此操作 而无需重新发明轮子 我正在直接使用 C 但针对的是 Win32
  • 访问私人成员[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 通过将类的私有成员转换为 void 指针 然后转换为结构来访问类的私有成员是否合适 我认为我无权修改包含我需要访问的数据成员的类 如果不道德 我
  • Qt-Qlist 检查包含自定义类

    有没有办法覆盖加载自定义类的 Qt QList 的比较机制 即在 java 中你只需要重写一个比较方法 我有一个带有我的自定义类模型的 QList QList
  • 如何避免情绪低落?

    我有一个实现状态模式每个状态处理从事件队列获取的事件 根据State因此类有一个纯虚方法void handleEvent const Event 事件继承基础Event类 但每个事件都包含其可以是不同类型的数据 例如 int string
  • 当 contains() 工作正常时,xpath 函数ends-with() 工作时出现问题

    我正在尝试获取具有以特定 id 结尾的属性的标签 like span 我想获取 id 以 国家 地区 结尾的跨度我尝试以下xpath span ends with id Country 但我得到以下异常 需要命名空间管理器或 XsltCon
  • WPF 中的调度程序和异步等待

    我正在尝试学习 WPF C 中的异步编程 但我陷入了异步编程和使用调度程序的困境 它们是不同的还是在相同的场景中使用 我愿意简短地回答这个问题 以免含糊不清 因为我知道我混淆了 WPF 中的概念和函数 但还不足以在功能上正确使用它 我在这里
  • 在 Visual Studio 2008 上设置预调试事件

    我想在 Visual Studio 中开始调试程序之前运行一个任务 我每次调试程序时都需要运行此任务 因此构建后事件还不够好 我查看了设置的 调试 选项卡 但没有这样的选项 有什么办法可以做到这一点吗 你唯一可以尝试的 IMO 就是尝试Co
  • Web API - 访问 DbContext 类中的 HttpContext

    在我的 C Web API 应用程序中 我添加了CreatedDate and CreatedBy所有表中的列 现在 每当在任何表中添加新记录时 我想填充这些列 为此目的我已经覆盖SaveChanges and SaveChangesAsy
  • 如何将图像路径保存到Live Tile的WP8本地文件夹

    我正在更新我的 Windows Phone 应用程序以使用新的 WP8 文件存储 API 本地文件夹 而不是 WP7 API 隔离存储文件 旧的工作方法 这是我如何成功地将图像保存到 共享 ShellContent文件夹使用隔离存储文件方法
  • 将自定义元数据添加到 jpeg 文件

    我正在开发一个图像处理项目 C 我需要在处理完成后将自定义元数据写入 jpeg 文件 我怎样才能做到这一点 有没有可用的图书馆可以做到这一点 如果您正在谈论 EXIF 元数据 您可能需要查看exiv2 http www exiv2 org
  • clang 实例化后静态成员初始化

    这样的代码可以用 GCC 编译 但 clang 3 5 失败 include
  • 实体框架 4 DB 优先依赖注入?

    我更喜欢创建自己的数据库 设置索引 唯一约束等 使用 edmx 实体框架设计器 从数据库生成域模型是轻而易举的事 现在我有兴趣使用依赖注入来设置一些存储库 我查看了 StackOverflow 上的一些文章和帖子 似乎重点关注代码优先方法
  • 将 xml 反序列化为类,list<> 出现问题

    我有以下 XML
  • 插入记录后如何从SQL Server获取Identity值

    我在数据库中添加一条记录identity价值 我想在插入后获取身份值 我不想通过存储过程来做到这一点 这是我的代码 SQLString INSERT INTO myTable SQLString Cal1 Cal2 Cal3 Cal4 SQ
  • 需要哪个版本的 Visual C++ 运行时库?

    microsoft 的最新 vcredist 2010 版 是否包含以前的版本 2008 SP1 和 2005 SP1 还是我需要安装全部 3 个版本 谢谢 你需要所有这些
  • 在 Dynamics CRM 插件中访问电子邮件发件人地址

    我正在编写一个 Dynamics CRM 2011 插件 该插件挂钩到电子邮件实体的更新后事件 阶段 40 pipeline http msdn microsoft com en us library gg327941 aspx 并且在此阶
  • C 中的异或运算符

    在进行按位操作时 我在确定何时使用 XOR 运算符时遇到一些困难 按位与和或非常简单 当您想要屏蔽位时 请使用按位 AND 常见用例是 IP 寻址和子网掩码 当您想要打开位时 请使用包含或 然而 XOR 总是让我明白 我觉得如果在面试中被问
  • 使用 libcurl 检查 SFTP 站点上是否存在文件

    我使用 C 和 libcurl 进行 SFTP FTPS 传输 在上传文件之前 我需要检查文件是否存在而不实际下载它 如果该文件不存在 我会遇到以下问题 set up curlhandle for the public private ke
  • 使用按位运算符相乘

    我想知道如何使用按位运算符将一系列二进制位相乘 但是 我有兴趣这样做来查找二进制值的十进制小数值 这是我正在尝试做的一个例子 假设 1010010 我想使用每个单独的位 以便将其计算为 1 2 1 0 2 2 1 2 3 0 2 4 虽然我

随机推荐

  • IEEE-754 32 位(单精度)指数 -126 而不是 -127

    我知道我是否有这样的号码 1 1001 0001 0011 0011 0000 0001 0101 000 1 sign bit 8 bit biased exponent 23 bit fraction mantissa 我可以通过从有偏
  • Math.random 生成多少熵?

    我想生成一个非常大的随机数 我不需要这个号码来保证加密安全 因此 我没有使用crypto getRandomValues https developer mozilla org en US docs Web API RandomSource
  • 处理原始 HTTP 请求内容

    我正在 ASP NET 中做一个电子商务解决方案 它使用PayPal 网站支付标准 https www paypal com IntegrationCenter ic standard home html服务 除此之外 我还使用他们提供的服
  • 使用 Git 和 Eclipse 管理 Android 项目

    我相信我有一个非常常见的问题 它会影响具有多个应用程序版本的开发人员 在我的例子中 我有两个 付费版本和免费版本 为了管理这两个版本 我使用具有 2 个不同分支的同一个 git 项目 免费和付费 然而 我的源代码包名称彼此不同 如预期 并且
  • 如何在neo4j中显示屏幕上的所有节点

    我有近 5000 个节点Recipes和 5 个节点Meal Types在 Neo4j 数据库中 目前他们之间没有任何关系 我正在下面运行 CQL MATCH n RETURN n LIMIT 100000 这运行良好 但它返回与相关的节点
  • 投影 3D 网格的 2D 轮廓算法

    给定 一个 3D 网格 由一组顶点和三角形定义 并用这些点构建网格 问题 找到任意平面上投影的任意旋转网格的二维轮廓 投影很容易 挑战在于找到平面中投影三角形边的 外壳 我需要一些有关研究该算法的输入 指针的帮助 为简单起见 我们可以假设
  • 在opencv中发现凸性缺陷? [根据给定的输入图像崩溃..]

    我有一个计算图像凸包的程序 我正在尝试使用此信息来计算fingers存在于输入图像中 从一些冲浪中我发现做到这一点的方法 数手指 是 寻找轮廓 凸包 凸性缺陷 但我在使用凸性缺陷函数时遇到了麻烦 它编译得很好 但在运行时程序会因某些输入图像
  • Linux 中不使用 C++ 的 C 异常处理

    Linux 是否提供了 C 语言的异常处理而不求助于 C 或者 实现此类异常处理的最佳方法是什么 目标是避免检查每个调用的函数的返回码 而是执行类似于 C 的线程安全且易于移植的操作 您可以通过为其编写信号处理程序来处理信号 GNU 记录的
  • gettext 中的“msgstr”有多个“msgid”

    是否可以制作两个或多个msgids匹配一个msgstr 例如 两者 列表 空 and 你正在接近gettext以错误的方式 它是如何工作的 msgid每个条目都需要 msgctxt是可选的 用于区分两个msgid内容相同但翻译可能不同的记录
  • 将 Recyclerview 与 DiffUtil.ItemCallback 一起使用不会滚动到顶部?

    我会搜索项目 每次从服务器获取时 当我搜索 o 时 它起作用 然后 ot 它再次起作用 作为 o 搜索的结果 我有 20 个项目 如果是 ot 我有 10 个项目 这是这 20 个项目的一部分 我确实删除了 EditText 中的 t 它显
  • 如何将 model.summary() 保存到 Keras 中的文件?

    有model summary 方法 https keras io models about keras models 在喀拉斯 它将表打印到标准输出 是否可以将其保存到文件中 如果您想要摘要的格式 您可以传递print功能为model su
  • 如何从 Grails 应用程序的 URL 中删除应用程序名称?

    我有一个应用程序在这样的 URL 上运行 http myapp mydomain com myapp http myapp mydomain com myapp 我不想要 myappURL 中的部分 那么如何去掉应用程序名称呢 我只想 ht
  • sqlalchemy:无法在拆卸时删除数据库

    我正在尝试使用 pytest 进行 sqlalchemy 但遇到以下问题 pytest fixture scope function def my session my db request from my models import Se
  • 如何使用 ConstraintLayout 将多个视图居中在一起?

    背景 谷歌宣布了一个名为 约束布局 http tools android com tech docs layout editor 这应该是最终的布局 它可以取代所有布局 同时保持平坦 没有嵌套布局 并具有更好的性能 问题 事实是 除了 Go
  • 显示 am4charts.XYChart 中的所有工具提示

    大家好 我正在使用 am4charts XYChart 来显示两个不同供应商的价格 该图表工作正常 并且仅当我们将光标悬停在图表中的点上时 每个点的工具提示才可见 但是我的要求是在渲染图表时应显示图表中所有点的工具提示 它应该一直显示而不悬
  • WSL 发行版对 VSCode 或 IntelliJ IDE 不可见

    几周来我遇到了这个非常奇怪的问题并且无法解决 我通常在 WSL2 上编码 它曾经在这台机器和用户上运行良好 但现在 每当我尝试在 Visual Studio Code 中打开远程资源管理器或尝试在 IntelliJ IDE 中打开 现有文件
  • Google Chrome 扩展:如何通过弹出页面上的 iframe 查看后台页面?

    我已经尝试了一段时间了 但无法让它发挥作用 基本上 当启用扩展时 我想要一个持久页面 无论是否单击浏览器操作图标 它都将保持套接字连接 后台页面就是这样发挥作用的 现在 我希望此背景页面显示在弹出页面中 通过 iframe 或任何替代方案
  • 使用javascript批量上传请求到Google Cloud Storage

    我正在尝试使用 javascript 在批量请求中将多个图像上传到谷歌云存储 我在用着https developers google com storage docs json api v1 how tos batch example ht
  • 在我在类构造函数中设置断点之前,gdb 类是不完整的类型?

    我在 gdb 中调试 Chrome 时总是遇到这个问题 如果我尝试打印某种类型的变量 GDB 不知道其内部结构 gdb p current child get 12 blink NGBlockNode 0xc2f755c1830 gdb p
  • 获取:错误C2668:'sqrt':对重载函数的不明确调用[重复]

    这个问题在这里已经有答案了 尝试根据教科书中给出的示例构建下面的源代码 我使用的是 Visual Studio 2008 编译器似乎不知道如何处理 sieve 1 gt Rebuild All started Project fig21 4