挂羊头卖犬肉
挂羊头卖犬肉
挂羊头卖狗肉的人
关注数: 104
粉丝数: 398
发帖数: 4,246
关注贴吧数: 63
278 还有么,谁更下
吧里的大神都来报下自己的50米自由泳最好成绩吧 RT,坐等大神
求问自由泳50米如何能游进40秒内 RT,学习自由泳2个月了,现在可以连续游完1500米。不过,悲剧的是50米最快速度始终都是60秒左右,求问如何才能游进40秒呢?
不想做10级的大水B,怎么破 还260经验就到10级了,不知道在到10级之前能不能看完 C++编程思想和effective C++这两本书,看过的进来讲下看完这两本书就不算C++水笔了吗?
深入理解计算机系统 好多人推荐这个,最近正在犹豫要不要翻一遍,可是时间又有些紧。求问这个真的是非看不可的那种书吗? 另外求大神推荐一本讲“数据库原理”的书,不要实际数据库比如mysql使用方法的那种
现在想水点经验越来越难了 RT,我还想早日冲到10级。 是不是非要有图才可以呢? @机智的黄图哥
最近深陷学习MFC中不能自拔,求大家来拍醒我 深入浅出MFC快看一半了,打算看完再把windows核心编程看了。 要耗掉两个月不能做其它的,而且貌似找工作什么的根本用不上
发现使用C++虚函数多态时的 比较奇特的两种状况 昨天发现了一个问题,在贴吧发了个帖子求助: http://tieba.baidu.com/p/2400159340?pid=34180331778&cid=#34180331778 今天终于弄明白了,现总结如下,发出来水下经验 ①、可以通过基类指针访问派生类的private型的虚成员函数 现象如下: class A ,然后里面有一个 public: virtual void f(); class B :public A,然后里面有一个private virtual void f(); 现在 A *p; p->f(); 这样,可以在类外访问B类的私有成员函数 f(); ②、在一个类的某成员函数中调用本类的虚成员函数的时候,这个成员函数是否是构造函数会导致调用不同层的虚成员函数。现象如下, class A,在A中定义一个虚成员函数 virtual void vf();,再定义一个实成员函数 void g(),在g()中调用了 vf(); class B:public A,定义一个非虚函数void p(),在这个函数中调用 g(); 再在B中重写virtual void vf(); 现在,B x, x.p(); 这个调用过程为 首先调用A::g(),借下来调用B::vf(); 这种情况有个特里,如果A中的g()恰好是A的构造函数,则构造函数内部调用虚成员函数只会调用本层的成员函数,或者是低于于本层的成员函数。 测试代码如下: 使用VS2010 #include <iostream> using namespace std; class time { public: time() { // display(); //如果在这里写就不行,也就是说构造函数是一个特殊的函数,它内部的调用本类的虚成员函数执行本层的虚成员函数,而不多态 hour=1; minute=1; second=1; } void f() { display(); //这里调用的是最顶层的派生类重载的display(); } virtual void display() { hour=3; minute=3; second=3; cout<<hour<<"小时"<<minute<<"分钟"<<second<<"秒"<<endl; } int hour; int minute; int second; }; class date:public time { public: virtual void display() { hour=2; minute=2; second=2; cout<<hour<<"小时"<<minute<<"分钟"<<second<<"秒"<<endl; } void g() { f(); } }; int main() //C++使用多态的时候使用基类还是派生类的指针都无所谓,结果相同 { date t1; //time *p; //p=&t1; //这样可以在类外访问派生类的私有虚成员函数 //p->display(); t1.g(); return 0; }
一个虚函数多态性的问题,求大神帮看看 代码如下: #include <iostream> using namespace std; class time { public: time() { display(); hour=1; minute=1; second=1; } virtual void display() { cout<<hour<<"小时"<<minute<<"分钟"<<second<<"秒"<<endl; } int hour; int minute; int second; }; class date:public time { virtual void display() { hour=2; minute=2; second=2; cout<<hour<<"小时"<<minute<<"分钟"<<second<<"秒"<<endl; } }; int main() { date t1; time *p; p=&t1; p->display(); return 0; }
关签,你就这素质 RT,求设精! @菊长
<水> 求问如何查看一个可执行程序分配的堆区栈区的大小 RT
做完了一个私活,收入1万 wince的项目,写了6000多行代码,在吧里是什么水平?
求QT creator 1.7G离线安装文件的下载地址 我在官网上填写了个人信息,邮箱名字神马的,然后点击submit之后直接就报网页错误,求之前下过的亲给我一个下载链接
求个靠谱的windows上用的QT creator 下载地址 RT,拜谢
伸手,求问std中的wstring 如何 使用<< 和 >> 代码如下: #include <fstream> #include <xstring> int main() { wofstream fout; fout.open(TEXT("\\liji.txt")); //打开一个写出文件 fout<<TEXT("hello world")<<endl; fout.close(); wstring s1,s2; wifstream fin; fin.open(TEXT("\\liji.txt")); fin>>s1>>s2; //这一行会报错,找不到右操作数为wstring的重载函数 return 0; } 求问,wstring如何使用 >> 进行输入
弱问吧里有人研究过JPL星历吗 RT,我下载了JPL官网给的编程库和代码,不知道怎么用。有人用过吗
类的友元函数常见使用误区【原创】 其实是我自己以前一直弄错了,今天写代码的时候发现的,不知道大家会不会犯和我一样的错误,所以就发出来了。 C++中的类的友元函数,只是说当友元函数的形参为类对象或者类指针或者类引用的时候,可以在函数体中使用这个形参的private和protect成员。 而假如函数的形参为这个类的某个成员类型,调用函数的时候直接将实参设置类对象的这个成员,这样是不可以的。因为即使声明了友元,传参过程中也是没有访问类私有成员的权限,只有在函数内部才有访问类私有成员的权限。 下面的代码可以说明: ①、失败情况: #include <iostream> using namespace std; class A { public: friend void display(int x); friend void f(A x); A() { n=0; } protected: int n; }; void display(int x) { cout<<x<<endl; } void f(A x) { cout<<x.n<<endl; } int main() { A a; display(a.n); //这个是会直接报错的 f(a); //这个是可以成功执行的 return 0; }
类的消化 class A {...}; class B {...}; int main() { A a[5]; B b[10]; //main: A你有对象吗? // A: 有5个。 //main: B你有对象吗? // B: 有10个。 //main: 菊长有对象吗? //@关签: ...基友算吗? //main: ...return -1; }
又有人黑程序猿,怎么破 http://tieba.baidu.com/mo/q/checkurl?url=http%3A%2F%2Fv.youku.com%2Fv_show%2Fid_XMjczMTQ4OTc2.html&urlrefer=1e37c24d895be3a5fd1a5f47ed130d3a
单目运算符的重载问题 求问以下类amount如何同时重载两个运算符 左++ 和 右++。 也就是实现 ++amount 和 amount++ 这两个运算符重载,求问C++里面有支持这个的语法规则么? 现在看到的重载不带形参的单目运算符,相同的写法有时候运算符在左边<如*>,有时候运算符在右边<如->>,求问能否在函数里通过某种设置显示地指定运算符的访问,就像 ++amount和amount ++ 这样 如: class amount { amount() { n=0; } amount(int x) { n=x; } unsigned int n; };
C++ primer看到第443页了,在吧里是什么水平 RT
亮吓你的眼之拷贝构造函数也能重载 直接上代码,输出的结果是 0 1; #include <iostream> using namespace std; class A { public: int x; A() { x=0; } A(A &a) //重载1 { x=a.x; } A(const A & a) //重载2 { x=a.x+1; } }; int main() { A a; A b=a; cout<<b.x<<endl; //执行的是A(A &a) 这个拷贝构造函数 const A c; A d=c; cout<<d.x<<endl; //执行的是A(const A & a) return 0; } @元芳,你怎么看
再次给Primer跪了 @gccer primer上说可以运行,在VS里不能运行: primer第四版 398 页说可以把一个类的友元函数声明和定义这个函数放在类里面一次性完成。 #include <iostream> class A { friend void f() //这里的f并不是A的成员函数,而是声明f时A的友元和定义f放在一起做 { printf("hello\n"); } }; int main() { f(); //这改成::f() 还是会报错 return 0; } //这个程序vs2008编译直接报错,求问怎么破?
求问如何在指定内存上创建对象 求问下面的 “2 级:总是使用malloc,或者 char[100] 来获得内存,但不知道怎么在指定内存上面创建对象。 ”,如何在指定内存上面创建对象? 附:c++程序员的几个境界 0 级:简历上写着了解c++, 实际上不知道mfc 根 VC有什么区别。 1 级:简历上写着精通c++, 但是仅仅知道mfc, 认为VC就是C++的一切。 2 级:总是使用malloc,或者 char[100] 来获得内存,但不知道怎么在指定内存上面创建对象。 3 级:感觉 std::string 没有 CString 好用! 听说过g++。 4 级:会使用 std::string, 认为 c/c++ 很不科学,完全就不是一个语言嘛. 知道4种以上c++ compiler. 感觉自己什么都会。 5 级:看山是山,看水是水。崇拜 boost source code, 呕心沥血的研究经典库的代码. 感觉自己什么都不会。 6 级:看山不是山,看水不是水。为自己钟情的函数库而奋斗着,恨不得用尽各种tricks 和 traits, 因为各种经典设计模式想得头疼. 稍有走火入魔迹象。 7 级:看山仍然山,看水仍然是水。 看到每行代码,都是汇编的指令和内存数据的移动。 代码中几乎不出现for 和 while 关键字. 不停地否定自己的过去。 8 级:维护着 g++,或者 Watcom C++ 之类的项目,头发也比较长,有艺术家气质. 9 级:参与 C++ Standards Committee, 代表不同的利益集团发言。 10级:彻底走火入魔, 成天幻想修改C++的语法, 添加自己的关键字, 重新实现一个C++的改进, 还想把c++变成脚本,解释执行.已经超越了利益。
看primer好枯燥啊 ,远不如之前看MFC爽
欢迎各位常来这个贴吧 交流二叉树相关的问题,以及数据结构和算法相关的问题。
给VS2008跪了,求gccer帮忙跑一小段代码 C++ primer中文版第四版383页最上面的一段代码:<我在自己代码里改的,意思一样> typedef double index; //在类前面声明index class student { public: index ind; //使用index private: typedef unsigned int index; //在类里面再次定义一个别名index,primer里说这个是error }; 可是,这段代码我在VS2008里面并没有报错,而且连warning都么有。 之前我就想这里可能会局部符号覆盖全菊符号,不知道gcc里面运行报错吗?
C++重载规则之亮瞎你的眼 下午一直在纠结C++中什么样函数算重载什么样不算重载,经过仔细阅读C++primer相关章节以及自己写代码测试,现在总结如下: ①、普通函数(非类成员函数)形参完全相同,返回值不同,如: void print(); int print(); //不算重载,直接报错 ②、普通函数形参为非引用类型,非指针类型,形参一个带const,一个不带const void print(int x); void print(const int x); //不算重载,直接报错重定义 ③、普通函数形参为引用类型或指针类型,一个形参带const,一个不带const void print(int *x); void print(const int *x); //算重载,执行正确,实参为const int *时候调用这个,为int* 的时候调用上面一个 void print(int &x); void print(const int &x); //算重载,执行正确,实参为const int &时候调用这个,为int& 的时候调用上面一个 ④、类的成员函数,形参完全相同,一个函数为const成员函数,一个函数为普通成员函数 void print(); void print() const; //算重载。const对象或const引用const指针调用时调用这个函数,普通对象或普通引用调用时调用上面一个。
程序猿 和 程絮媛 的故事 有人想写一篇这样的文章吗?
吐槽C++ primer 第十一章里讲 插入迭代器 的地方,提了一些插入迭代器的用法,但是又不讲清楚。害得我以为 back_inserter 是一个类,然后稍微修改了一下书中的代码运行程序VS2008死活不给通过。后来找了一个小时,终于发现了 back_inserter 原来是 back_insert_iterator 这个类的一个成员函数,我说怎么定义back_inserter这个类的对象总是成功不了。
世界末日为何未如期到来 玛雅预言大师一边吃春卷一边在发表对未来的预言,旁边的门徒在虔诚地记录。日历翻到 2012年12月21日时,大师突然吃到好辣的东西,头上冒汗,脸色大变:“操,是介末!日 !”门徒悲伤地记了下来:2012。12。21,世界末日。
给大微软ORZ了 WINCE6.0中SetWindowPlacement竟然不能用,叫我如何把窗口设置为“全屏”
给“学习OPENCV”这本书的作者跪了 <前言:学习OPENCV是OPENCV入门的最经典教材,> 下面是书中第29页的代码 : IplImage * shrink(IplImage * x) //返回一个传入图像的下采样图像,输出图像大小是输入图像的一半 { assert(x->width%2&&x->height%2); //如果传入图像的宽度和高度不为整数,直接报错退出 IplImage *out=cvCreateImage(cvSize(x->width/2,x->height/2),x->depth,x->nChannels); cvPyrDown(x,out); return out; //尼玛返回了一个函数内的局部变量 } 我写完后运行了一下,程序报错了,然后回头看程序,开始还以为是assert那报的错,后来再仔细一看,尼玛菊部变量也敢返回,真替写书人的智商感到拙计
吧里有人学过opencv吗? 《学习opencv》第23页的程序,编写一段代码打开一段avi文件,从文件中读取一个视频流,再每33ms从视频流中获取一幅图像,显示在窗口中。 现在的问题是,我使用cvCreateFileCapture()这个函数来读取一个视频文件到内存中并生成一个视频流的时候,由于avi文件的格式不对,总是会读取失败。但是有的avi文件就可以读取成功。貌似网上其他人说有个转码器可以先对视频文件预处理,然后就都可以正常读取了。我下了几个都不好用,求问有人有好用的这种视频转码器吗?
单字节的char中是如何存储汉字的? #include <iostream> using namespace std; int main() { char *p="你好,世界"; cout<<p<<endl; return 0; } 这段代码在VS2008中可以正确的编译运行,而且当我把项目设置中改为“使用多字节字符集”了以后,还是可以正确执行。 求问这段代码是如何能够正确运行的呢? char只有一个字节,为什么可以表示汉字呢?1个字节只能区分256中状态,汉字有好几万种状态的吧。 orz求大神解答
再次给微软orz了 最近做primer课后习题,顺便写了一个MFC的实现文档中单词替换以及自动大写的小程序。今早写完了,觉得项目设置中的“在共享DLL中使用MFC”似乎有些不妥,就把这一项改成了“在静态库中使用MFC”,改完以后编译运行,之前 0 warning 0 error的工程瞬间变成了19个error3 warning,给大微软跪了
伸手,c++ primer 第四版课后习题 11.4 题目:假定v是vector<double>类型的对象,则调用accumulate(v.begin(),v.end,0)是否有错?如果有的话,错在哪里? 我写代码跑了一下,果然报错,改成accumulate(v.begin(),v.end,0)就不报错了。求问为什么会报错,难道int自动转double都不让转了吗? 代码如下: #include <numeric> #include <vector> #include <iostream> using namespace std; int main() { vector<double> v; for(int i=0;i<=10;i++) v.push_back(i); double y=accumulate(v.begin(),v.end(),0); //报错,最后一个0改成0.0就不会报错了 cout<<y<<endl; return 0; }
求问C++ STL标准库有类似微软MSDN那样的一个说明文档吗? RT,有这样的东西存在吗? 如果有,orz求一个
好久没水了 ,最近在学OPEN CV,话说群里有人也在学这个吗?
今晚有周女神解说的直播可以看吗 RT,PPTV意甲频道貌似是粤语直播
IO缓冲区问题 代码如下: #include <iostream> using namespace std; int main() { cout<<3<<4; //单步调试,执行完这一行后,dos界面上就已经输出了 34 cout<<5<<endl; return 0; } 求问以上问题,为什么在程序的“cout<<3<<4; ”这一行,执行完以后,既没有 endl、ends、flush、unitbuf,cout的缓冲区也没有满,程序也没有结束,也没有tie要输入,为什么cout的缓冲区会刷新呢?也就是为什么可以在dos界面上可以看到输出 34 呢? 我用的是vs2008,不知道GCC上是不是一样,orz求原理
跪求GCCER帮忙跑下以下代码 跑完后帮忙把结果发上来,或者截个图 #include <iostream> #include <cmath> #include <bitset> using namespace std; int main() { float fx=8.25; int temp; int t1; int t2; bitset<32> bs1(0); char *p=reinterpret_cast<char *>(&fx); char a=p[0]; char b=p[1]; char c=p[2]; char d=p[3]; int m[4]={a,b,c,d}; for(int i=0;i!=8;i++) //第一个字节 { t1=m[0]>>i; //将m[0]右移i位 t2=t1&1; //只保留最后一位 if(t2) bs1.set(i); //如果是1,则讲对应的位设置为1 } for(int i=0;i!=8;i++) { t1=m[1]>>i; //将m[0]右移i位 t2=t1&1; //只保留最后一位 if(t2) bs1.set(8+i); //如果是1,则讲对应的位设置为1 } for(int i=0;i!=8;i++) { t1=m[2]>>i; //将m[0]右移i位 t2=t1&1; //只保留最后一位 if(t2) bs1.set(16+i); //如果是1,则讲对应的位设置为1 } for(int i=0;i!=8;i++) { t1=m[3]>>i; //将m[0]右移i位 t2=t1&1; //只保留最后一位 if(t2) bs1.set(24+i); //如果是1,则讲对应的位设置为1 } cout<<bs1<<endl; return 0; }
求问程序输出为什么和想得不一样 刚才看到有人发帖求float数组在内存中的具体存储方式,就想写个程序自动求解。结果写完以后运行发现和理论上不同,于是把float换成了int,再运行仍然不同。现在先从简单的说起,跪求大神帮看下下面输出的结果为什么不能得到想要的值 31个0和1个1? #include <iostream> using namespace std; int main() { //float x=8.25; //float *fp=&x; //char*q=reinterpret_cast<char *>(fp); int x=1; int *fp=&x; cout<<fp<<endl; //输出正确的地址 char *q=reinterpret_cast<char *>(fp); //换成 char *q=(char *)fp结果一样 cout<<q<<endl; //输出已经乱了 输出了个笑脸 尼玛 for(int i=0;i!=32;i++) //本来是想输出int数字在内存中的二进制数,从高位到低位输出 { if(q[31-i]==0) cout<<0; else cout<<1; } //输出了32位 0 或者 1,其中1的数目有10多个 cout<<endl; return 0; }
再次给微软跪了,求GCCER帮忙跑一段代码 #include <iostream> using namespace std; int main() { cout<<__FILE__<<endl; cout<<__LINE___<<endl; //error C2065: “__LINE___”: 未声明的标识符 cout<<__DATE___<<endl; //error C2065: “__DATE___”: 未声明的标识符 cout<<__TIME__<<endl; return 0; } 上面的代码其中的两行 VS2008 报错了,求问在GCC上以上代码是否可以运行?
栈布局问题 #include <iostream> using namespace std; int main() { char a[]="hello world"; char b[3]={'p','i','g'}; strcpy(a,b); cout<<a<<endl; //希望获得的结果是pighello world; return 0; } 代码如上面所示,在VS2008上面运行输出结果为空,什么都不输出,空格也不输出。 单步调试的时候发现执行到strcpy以前,b的显示值为 “pig烫烫烫hello world”,a的显示值为“hello world”。按照一般的说法,b的值应该直接是 “pighello world” 的吧,求问中间这个“烫烫烫”是做什么的。另外这段代码为什么不能得到正确输出呢?
给微软跪了,求GCCER帮忙跑下如下代码 #include <iostream> using namespace std; int max(int *p,int *q) { return *p>*q?*p:*q; } int main() { int x=5; int y=3; //int *a=&x; //这两行是可以正确运行的,输出5 //int *b=&y; const int *a=&x; //当使用这两行的时候,VS2008不报错,但是输出不正确 const int *b=&y; //输出为012ff60 cout<<max(a,b)<<endl; return 0; } 求问当一个函数形参为 int * 的时候,是否是不能直接用 const int * 的实参来充当参数,应该是直接报错的吧? 我的这段代码vs2008上不报错,且当把实参换成 int * const a=&x的时候,不报错,输出结果还正确,不知道gcc上运行这段代码的结果是什么,求帮助。
一秒钟区分是普通菜鸟还是超级菜鸟 下面代码的执行结果,不许翻书,不许度娘 #include <iostream> #include <string> using namespace std; int main() { string s1; string s2("hello"); string s3(" world"); cout<<sizeof(s1=s2+s3)<<endl; cout<<s1<<endl; return 0; }
一秒钟区分是菜鸟还是大婶 下面代码输出结果是多少?为什么? #include <string> #include <iostream> int main() { std::cout<<sizeof(std::string)<<std::endl; return 0; } 有敢不查资料直接报答案的吗?
求gccer帮我跑下如下程序,看可以跑不 #include <iostream> using namespace std; class student { public: operator int () { return x; } student() { x=5; } student(int m) { x=m; } private: int x; }; int main() { student b(-10); cout<<10+b<<endl; return 0; }
眼看就要水到9级了,primer才刚开始看 想死的心都有了
伸手党现身---关于拷贝构造函数 问题如下: ①、C++里如果给一个类显式地定义了一个“拷贝构造函数”,如 A(const A &x) 这种函数,则在需要调用“拷贝构造函数”的地方,如 A b;A c=b;这里调用的是自己定义的拷贝构造函数,这种机制是C++如何实现的呢?是不是通过虚函数的特性来实现的? ②、条件和①中问题一样,问在已经显式定义了一个“拷贝构造函数”的情况下,是否有办法调用这个类自带的“默认拷贝构造函数”? ③、定义一个类A的时候,如果不写任何构造函数,则系统自带一个不带任何形参的构造函数 A(),但是如果我们给这个类A显式地定义了一个构造函数,这个构造函数带有形参,则之前那个“ 系统自带一个不带任何形参的构造函数 A()”用不了了,这个机制是C++如何实现的呢?
代码如下,求问编译器隐藏了多少函数? 今天写了一个简单的类,代码如下: class student { public: int number; int score; }; 然后用这个类定义一个对象,结果在student s1( 这个时候系统提示了一个构造函数: student(const student &);求问就我上面的类student而言,这么写C++默认提供了多少成员函数?
求问使用 信号量数组 解决哲学家就餐问题 在操作系统这门课中算是哪种难度的题? 我看到了这个例题,感觉想起来太绕了,连现成的代码都懒得看
贴吧豆有什么用 我都2825个了
PV操作求助 求问大神下面的说法正确吗?也就是,按照下面的说法,信号量有可能值小于0,取到 -1、-2等?请问是不是这样滴 P原语操作的动作是: (1) sem减1; (2) 若sem减1后仍大于或等于零,则进程继续执行; (3) 若sem减1后小于零,则该进程被阻塞后进入与该信号相对应的队列中,然后转进程调度。 V原语操作的动作是: (1) sem加1; (2) 若相加结果大于零,则进程继续执行; (3) 若相加结果小于或等于零,则从该信号的等待队列中唤醒一等待进程,然后再返回原进程继续执行或转进程调度。
置换选择排序 看了1小时还是看不懂 智商拙计啊
有志成为windows程序员的进 大家都希望移动平台windows系统火起来吧,有人跟我一样想入一个lumia吗?
今天晚上打算把 插入、希尔、快速、归并排序都写一遍 在吧里是什么水平?
刚写完了一个“深度优先搜索算法走迷宫”的程序 测试成功了,在吧里是什么水平?
DSDemoW,数据结构神奇 大家都用过吗?
首页
1
2
下一页