草庐IT

call_btn

全部标签

c++ - 错误 : call of overloaded ‘max(int, int)’ is ambiguous

#includeusingnamespacestd;templateTmax(Tlhs,Trhs){returnlhsintmax(intlhs,intrhs){returnlhs(4,5)如何更正此错误? 最佳答案 这都是因为你的usingnamespacestd;。删除该行。通过该using指令,您将std::max(必须通过iostream以某种方式包含)带入全局范围。因此,编译器不知道调用哪个max-::max或std::max。我希望这个例子对于那些认为使用指令是免费的的人来说是一个很好的稻草人。奇怪的错误是一种副作用。

C++:莫名其妙的 "pure virtual function call"错误

我在使用MicrosoftVisualC++2015时遇到了一些困难,但能够用一个小程序重现该问题。给定以下类:classBaseClass{public:BaseClass():mValue(0),mDirty(true){}virtual~BaseClass(){}virtualintgetValue()const{if(mDirty)updateValue();returnmValue;}protected:virtualvoidupdateValue()const=0;mutableboolmDirty;mutableintmValue;};classDerivedClass:

c++ - gcc 与 clang、msvc 和 icc : Is this function call ambiguous?

我能得到的所有编译器都同意这很好:templateautofoo(Check,T...)->void;templateautofoo(int,T...)->void;intmain(){foo(7,"");}但是,根据gcc,以下代码(带有不能从函数参数推导的前导模板参数)是不明确的:templateautobar(Check,T...)->void;templateautobar(int,T...)->void;intmain(){bar(7,"");//ambiguousaccordingtogccbar(7);//justfine}另一方面,clang、msvc和icc对此非常满

c++ - 错误 : no matching function for call to 'begin(int*&)' c++

#include#includeusingnamespacestd;voidprint(intia[]){int*p=begin(ia);while(p!=end(ia))coutP指向ia中第一个元素的指针。为什么它说“错误:没有匹配函数来调用'begin(int*&)'c++”谢谢!:) 最佳答案 因为在print()内部,变量ia是一个指针,而不是数组。在指针上调用begin()没有意义。 关于c++-错误:nomatchingfunctionforcallto'begin(int

c++ - 以下运行时错误是什么意思 : "terminate called without an active exception\n Aborted"

这个错误困扰了我大约两天:运行代码时出现运行时错误“在没有事件异常的情况下终止调用\n中止”,为什么?我尝试定位代码,发现该行可能是退出代码“xx=newint[num]”,我的测试用例中的num大约是640000(64MB内存到新)。当我将num设置为10时,没问题,但这次我的代码得到了错误的答案。我尝试删除所有的“try/catch”子句,但仍然有这个错误。另外我//所有调用“xx=newint[num]”子句的函数,错误依然存在,这次我定位代码可能退出是一个正常的“for循环”。所有情况都通过了编译器,你在运行代码时遇到过这个错误吗?谢谢!I//一些删除子句并得到以下错误:*检测

c++ - 经典C++(C with Classes)的Call/Return特性,现代语言有哪些?

在TheDesignandEvolutionofC++的第57页上,Dr.Stroustrup谈到了一个功能,该功能最初是CwithClasses的一部分,但它不是现代C++(标准C++)的一部分。该功能称为call/return。这是一个例子:classmyclass{call(){/*dosomethingbeforeeachcalltoafunction.*/}return(){/*dosomethingelseaftereachcalltoafunction.*/}...};我觉得这个功能非常有趣。有没有现代语言有这个特殊的功能? 最佳答案

c++ - 构造函数中的 "No matching function call"

这是我在“solver.h”文件中的构造函数声明。Solver(constBoard&board_c,intmax_moves_c);尝试编译时出现以下错误...solver.cpp:Inconstructor'Solver::Solver(constBoard&,int)':solver.cpp:6:55:error:nomatchingfunctionforcallto'Board::Board()'Solver::Solver(constBoard&board_c,intmax_moves_c)然后它列出了董事会build者的候选人。我不确定自己做错了什么,因为我看不出为什么会出

windows - tensorflow : failed call to cuInit: CUDA_ERROR_NO_DEVICE

我的测试:importtensorflowastfhello=tf.constant('Hello,TensorFlow!')sess=tf.Session()`错误:c:\l\work\tensorflow-1.1.0\tensorflow\stream_executor\cuda\cuda_driver.cc:405]调用cuInit失败:CUDA_ERROR_NO_DEVICE->但是“/cpu:0”工作正常配置:nvidia-smi:CUDA9.1版tensorflow-1.1.0Windows10cudnn64_7.dll(安装在C:\ProgramFiles\NVIDIAG

windows - 示例代码 : A service calls CreateProcessAsUser() I want the process to run in the user's session, 不是 session 0

我正在寻找示例代码:对于调用CreateProcessAsUser()的服务,我希望进程在用户session中运行,而不是session0到目前为止,创建的进程仅像session0中的服务一样运行 最佳答案 这是从一些从服务启动控制台应用程序的旧代码中删除的。它在NT4下工作,但我没有用现代版本的Windows测试过它,所以不能保证它会像在NT4上一样工作。编辑:不,这不会按原样工作。您需要添加找到的代码here创建桌面,设置SID等。if(!LogonUser(userId,domain,password,LOGON32_LOGO

VBA Excel Call和Run Breaking Backtracking

我正在制作一个带有许多不同潜艇的工作簿,为了避免用户意外激活删除表格代码的子,例如,我尝试将所有Subs私有化。现在,只能通过单击工作表上的按钮来激活我的潜艇,并且一切都按预期工作。当然,我的潜水艇试图在另一个模块中致电一个私人子。为了解决这个问题,我用了Application.Run而不是Call,这起作用了,还允许我从上一本子中调用一个变量的“sextsub”,这给了我一些我需要的灵活性,并且显然无法获得Call.例如。SubFirstSub()*SomethinggoingonApplication.Run"SecondSub",SomeVariableSubEndsubSubSecon