草庐IT

do_iterations

全部标签

c++ - 嵌套 For 循环到 Do while 循环

您好,我阅读了有关家庭作业问题的指南,上面说要明确说明这是家庭作业。这是作业,我花了最后45分钟一遍又一遍地尝试。我碰壁了,需要帮助。我的任务是将这段来自双For循环的代码转换为嵌套在for循环中的while循环。我已经成功完成了。但是,第三部分是采用该代码并将外部for循环变成dowhile循环。如果输入是“4”,则输出需要每行递增一个“#”##########下面是我编写的代码,我需要将外部for循环变成dowhile循环:intmain(){intside;cout>side;for(inti=0;i=0){cout这是我目前的尝试:intmain(){intside;inti;

c++ - std::iterator_traits libstdc++ 和 libc++ 之间的分歧

给定:structIter{usingvalue_type=int;usingdifference_type=int;usingreference=int;usingpointer=int;usingiterator_category=int;};以下代码适用于libstc++,但无法针对libc++5.0.0进行编译:#include#includestatic_assert(std::is_same::iterator_category,Iter::iterator_category>::value,"");出现错误:error:nomembernamed'iterator_cat

c++ - boost::asio::streambuf 断言 "iterator out of bounds"

客户端向服务器发送大约165kB的数据。起初一切都很好。但是当客户端再次发送相同的数据(165kB)时,我在服务器端收到一个断言。断言包含有关“迭代器越界”的信息在调用堆栈上,有一些关于read_until方法的信息。所以我认为我犯了一个错误。TCP异步服务器代码如下:handle_read代码:voidSession::handle_read(constboost::system::error_code&a_error,size_ta_nbytestransferred){if(!a_error){std::ostringstreamdataToRetrive;dataToRetri

c++ - 将基于自定义模板的迭代器类的对象转换为 const_iterator

我正在大学学习OOP类(class)(C++是基础语言)。我的任务是实现自己的链表模板容器类。我几乎完全做到了,但遇到了问题。已知STL提供iterator和const_iterator通过列表进行迭代的类。它们具有几乎相同的实现,主要区别在于iterator的方法返回引用,而const_iterator的方法——常量引用。我关注了https://stackoverflow.com/a/3582733/2108548并创建了单独的模板类ListIterator.然后我用typedef声明类(class)Iterator和ConstIterator类内List.我有这样的东西:templ

c++ - OpenCV 错误 : Sizes of input arguments do not match (The operation is neither 'array op array' )

我正在做一个在树莓派上使用opencv的项目。我遇到了一个看起来很简单的障碍,但我无法解决问题。首先,这是我的代码的一部分:{gray=cvarrToMat(py);///cvShowImage("camcvWin",py);//displayonlygraychannelif(img_num%2==1){cv::imwrite("/home/pi/test/Gray_2Image1.jpg",gray);}elseif(img_num%2==0){cv::imwrite("/home/pi/test/Gray_2Image2.jpg",gray);cv::Matimg2=cv::im

c++ - 为什么箭头运算符 "->"不能在 boost::numeric::ublas::vector<...>::iterator 上工作?

考虑这段代码:structCData{intbar(){return1;}};intmain(){typedefboost::numeric::ublas::vectorvec_data_t;vec_data_tfoo;for(vec_data_t::iteratorit=foo.begin();it!=foo.end();++it){std::coutbar()为什么循环中使用箭头运算符的第一行编译失败,而使用运算符*的下一行编译正常?我习惯于将箭头运算符与std容器迭代器一起使用,想知道为什么它在boost::numeric::ublas迭代器上失败。我使用的是boost1.54和

c++ - 在 C++ 中将惰性生成器实现为 forward_iterator

MyGenerator代表一个(可能)有限的整数序列,计算起来很昂贵。所以我不想预先生成它们并将它们放入容器中。structMyGenerator{boolHasNext();intNext();}全部打印:MyGeneratorgenerator;while(generator.HasNext()){std::cout如何实现类似的遵循forward_iterator协议(protocol)的生成器?boost::function_input_iterator接近,但我不知道预先元素的数量。 最佳答案 首先,查看boost::fu

python - Cython 扩展类 : How do I expose methods in the auto-generated C struct?

我现有的C++代码定义了一些我需要使用的类,但我需要能够将这些类发送到Python代码。具体来说,我需要在C++中创建类实例,创建Python对象作为这些C++对象的包装器,然后将这些Python对象传递给Python代码进行处理。这只是一个更大的C++程序的一部分,因此最终需要使用C/PythonAPI在C++中完成。为了让我的生活更轻松,我使用Cython定义扩展类(cdef类)作为我的C++对象的Python包装器。我使用的是典型格式,其中cdef类包含指向C++类的指针,然后在创建cdef类实例时对其进行初始化。因为如果我有一个现有的C++对象要包装,我也希望能够替换指针,所以

c++ - 如何检查迭代器是否是 C++ 中的 output_iterator?

templatevoidput_value(Iteratorpos,intn){static_assert(IsOutputIterator);////HowtoimplementIsOutputIterator?//*pos=n;}std::iterator_traits::iterator_category没有帮助。例如:vector::iterator很明显是一个output_iterator,但是std::iterator_traits::iterator>::iterator_category将返回random_access_iterator,可能不是output_itera

c++ - 并行 STL 是否处理插入迭代器,例如 std::back_insert_iterator?

并行STL算法是否符合std::back_insert_iterator??我可能误解了std::par和std::par_vec之间的区别,std::par_vec是否意味着输出范围是否需要预先分配?代码示例:autonumbers={1,2,3,4,5,6};autosquared=std::vector{};std::transform(**std::par/std::par_vec,**numbers.begin(),numbers.end(),std::back_inserter(squared),[](autoval){returnval*val;});更新简化问题,因为我