Articles of c + +

g ++ 4.6.1编译器错误:错误:未知的伪操作:`.cfi_personality'

我有一个文件编译没有错误或警告我的MacBook Pro运行osx(雪豹)使用g ++(4.6.1)。 我只是上传到我们的Linux集群(不是由我运行),并试图在那里编译(也使用gcc 4.6.1)。 这次我和汇编器有很多奇怪的错误信息。 我如何解释以下错误? g++ -I../shared/boost_1_47_0 -std=c++0x -O2 -c ../shared/ft.cpp -o ../shared/ft.o /tmp/ccEqihNa.s: Assembler messages: /tmp/ccEqihNa.s:809: Error: unknown pseudo-op: `.cfi_personality' /tmp/ccEqihNa.s:810: Error: unknown pseudo-op: `.cfi_lsda' /tmp/ccEqihNa.s:1055: Error: unknown pseudo-op: `.cfi_personality' /tmp/ccEqihNa.s:1056: Error: unknown pseudo-op: `.cfi_lsda' :145: Error: unknown pseudo-op: `.cfi_personality' :146: Error: unknown pseudo-op: `.cfi_lsda' :248: Error: unknown pseudo-op: `.cfi_personality' :249: Error: […]

如何在linux上制作透明窗口

我想在Linux上使用启animation面使应用程序成为应用程序。 我想用X11和glx(OpenGL应用程序)。 我find了一种方法来删除窗口周围的边框,但我找不到如何使其透明。 我怎样才能做到这一点?

在Linux中通过C ++(或python)访问多个键盘input

我想在自己的应用程序中读取连接到计算机的(最多4个)键盘的input。 我的情况 对于一个小事件,我想附加三个USB条形码扫描仪到笔记本电脑(有一个键盘) 默认情况下,条形码扫描器就像键盘一样工作。 如果扫描条形码,只需input数字并按下“返回”键。 这太好了,开箱即用。 对于我的应用程序,三个条形码扫描仪将同时工作,并可能与默认应用程序发生冲突。 此外,应该有意见在手提电脑键盘上手动input条形码。 目标 因此,我需要用我的自定义应用程序(C ++或python)读取四个键盘的input,并分别处理它们。 环境 我的具体环境是安装有三个条码扫描器的笔记本电脑上的Ubuntu 11.04。 该应用程序是用C ++或python编写的(取决于这个问题的答案)。 预先感谢任何提示或答案

如何在Windows上编写C ++ FireFox 3插件(不扩展)?

有人可以写一步一步的指导,开发基于C ++的插件在Windows上的FireFox? http://www.mozilla.org/projects/plugins/上的链接和例子都是旧的和不准确的 – “新”链接在2004年被添加到页面。 这个例子可以是任何东西,但我想的是一个插件,让JavaScript设置名称,然后显示“Hello {Name}”。 为了显示双向沟通,可以有一个返回完全称呼的属性。 虽然不是那么重要,但是如果插件也可以在Chrome中运行,那也不错。

Windows服务发送吐司通知

我试图在Windows 10机器上制作Windows服务。 我想要它定期创build一个敬酒通知,但我有很多麻烦: 看起来这些通知是在Windows.UI.Notifications命名空间( 这里 )。 但是没有一个以Windows开头的命名空间是可以访问的,我不能添加Windows.winmd作为参考来获取它们。 据我所知,吐司通知应该不仅适用于Windows 10,也适用于Windows 8.这是否适用于提供服务? 我试图做甚至可能吗? 目前我打算做一个单独的应用程序来调用只是为了发送通知,但似乎是矫枉过正。

问题与CreateDC和wglMakeCurrent

PIXELFORMATDESCRIPTOR pfd = { /* otherwise fine for a window with 32-bit color */ }; HDC hDC = CreateDC(TEXT("Display"),NULL,NULL,NULL); // always OK int ipf = ChoosePixelFormat(hDC,&pfd); // always OK SetPixelFormat(hDC,ipf,&pfd); // always OK HGLRC hRC = wglCreateContext(hDC); // always OK wglMakeCurrent(hDC,hRC); // ! read error: 0xbaadf039 (debug, obviously) 但是下面的作品与hRC相同: wglMakeCurrent(hSomeWindowDC,hRC); 以上是Windows的OpenGL 3.0+初始化系统的一部分。 我试图避免为了美观而创build一个虚拟的窗口。 我之前从未使用过CreateDC,所以也许我错过了一些东西。 编辑:hSomeWindowDC将指向一个适当的像素格式的窗口DC。 […]

为什么相同的代码大小会产生不同大小的exe文件

我有这个代码: namespace ConsoleApplication2 { class Program { static void Main(string[] args) { Console.WriteLine("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); } } } 生成一个exe文件大小5kb。 现在我只是改变它,所以所有的string是不同的: namespace ConsoleApplication2 { class Program { static void Main(string[] args) { Console.WriteLine("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("2aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("3aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("4aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("5aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("6aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("7aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("8aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("9aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); Console.WriteLine("10aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); } } } 现在的exe文件是7kb。 现在我可以猜测,某些地方某些function是通过使用所有的string作为内存中只有一个string改善内存使用,但我不知道哪些… 所以我的问题是什么部分使这个记忆改善?

在Qt Creator的Gotoline

那么,我正在做一个转线系统。 但它似乎不起作用。 它之前做过,但我想我打破了它。 void ScriptWindow::gotoLine() { int line = QInputDialog::getInteger(myEdit, "Line Number","To what line do you want to go?", 1, 1, myEdit->document()->lineCount()); QTextCursor cursor = myEdit->textCursor(); myEdit->setTextCursor(cursor); cursor.setPosition(QTextCursor::Start, QTextCursor::MoveAnchor); while(cursor.position() == QTextCursor::Start) { cursor.setPosition(line – 1, QTextCursor::MoveAnchor); } } 你能告诉我我做错了什么吗?

FindFirstFile LPCSTR

你好,我在这里得到了我的代码的问题。 LPCSTR mergeString(LPCSTR firstString, std::string secondString) { string convertedString = ConvertString(firstString); LPCSTR mergedString; int i = convertedString.size(); convertedString.insert(i, secondString); mergedString = (convertedString.c_str()); return mergedString; } void GetFiles(LPCSTR path) { WIN32_FIND_DATA File_Data; LPCSTR lPath = mergeString(path,"\\*.txt"); FindFirstFile(lPath, &File_Data); wcout << File_Data.cFileName; } 你传递你想要在GetFiles(LPCSTRpath)中使用的path然后,我使用mergestring函数将path与一个扩展(\ *。txt)合并在一起,除了当它返回LPCSTR时,它只是很多更奇怪的字符,我不知道为什么或者是一个更好的方法来做到这一点?

SetupDiGetDeviceInterfaceDetail仅为所有USB HID对象的path返回“\”

我可以告诉我有多less个USB HID设备(7),但是每次尝试获取任何设备上的详细信息时,返回的path始终为“\”,使得我根本无法访问设备。 我使用的代码在过程中与此代码非常相似: HANDLE connectDeviceNumber(DWORD deviceIndex) { GUID hidGUID; HDEVINFO hardwareDeviceInfoSet; SP_DEVICE_INTERFACE_DATA deviceInterfaceData; PSP_INTERFACE_DEVICE_DETAIL_DATA deviceDetail; ULONG requiredSize; HANDLE deviceHandle = INVALID_HANDLE_VALUE; DWORD result; //Get the HID GUID value – used as mask to get list of devices HidD_GetHidGuid (&hidGUID); //Get a list of devices matching the criteria (hid interface, present) hardwareDeviceInfoSet = SetupDiGetClassDevs (&hidGUID, NULL, […]