Articles of 类

G ++对class :: function的未定义引用

我终于相当绝望了。 所以,在我的c ++类中,我们被指示使用类。 我们有头文件声明类和函数,而单独的.cpp文件实现它。 事情应该是工作,但他们不是,networking上的解决scheme似乎没有为我工作。 我正在linux上使用G ++编译器,而且它似乎不能在IDE或常规命令行上工作。 我在TBook.h中得到的错误是这样的: /usr/lib/gcc/x86_64-linux-gnu/4.6/../../../x86_64-linux-gnu/crt1.o: In function `_start': (.text+0x20): undefined reference to `main' /tmp/ccxqI6An.o: In function `TBook::TBook()': TBook.cpp:(.text+0x3b): undefined reference to `Telephone::Telephone()' TBook.cpp:(.text+0x100): undefined reference to `Telephone::Telephone()' TBook.cpp:(.text+0x132): undefined reference to `Telephone::allNum(std::basic_string<char, std::char_traits<char>, std::allocator<char> >)' TBook.cpp:(.text+0x182): undefined reference to `Telephone::~Telephone()' TBook.cpp:(.text+0x191): undefined reference to `Telephone::~Telephone()' TBook.cpp:(.text+0x2b3): undefined reference to `Telephone::~Telephone()' TBook.cpp:(.text+0x2e6): […]

Win32自定义消息框

我想制作一个自定义消息框。 我想要自定义的是button的文本。 MessageBoxW( NULL, L"Target folder already exists. Do you want to overwrite the folder?", L"No title", MB_YESNOCANCEL | MB_ICONQUESTION ); 我想只是改变button文本Overwrite , Skip , Cancel 。 什么是最简单的方法? 我必须使这与Windows默认消息框具有相同的外观和感觉。

如何find包含类定义的jar文件?

什么是你最喜欢的工具,插件,脚本,在一堆jar文件中find一个java类? 我经常inheritance那些抱怨不存在的类的代码,这只是因为jar文件没有包含在classpath中。 但是,在哪个jar文件是类? 我可能没有JAR(所以我必须在线search),或者将JAR添加到类path中可能会创build重复的类定义问题。 我显然更喜欢一个Eclipse插件,但我打开任何与Windows一起工作的软件。 我知道… Windows不是我的select,但是这是我的工作。 谢谢! 路易斯 PS谢谢你的回答。 在回顾了一些回应后,我意识到我应该更好地解释我的情况。 我们有一个下载或创build的JAR文件库,但有时候这个类会在某个地方联机。

C ++:从DLLdynamic加载类

对于我当前的项目,我希望能够从一个DLL(这不总是相同的,甚至可能不存在,当我的应用程序编译)加载一些类。 对于一个给定的类,也可能有多个可选的dll(例如Direct3D9和OpenGL的一个实现),但是任何时候只有一个dll会被加载/使用。 我有一组基类定义接口加上一些基本的方法/成员(即用于引用计数的)我想要加载的类,这些DLL项目然后从创build那里派生类。 //in namespace base class Sprite : public RefCounted//void AddRef(), void Release() and unsigned refCnt { public: virtual base::Texture *GetTexture()=0; virtual unsigned GetWidth()=0; virtual unsigned GetHeight()=0; virtual float GetCentreX()=0; virtual float GetCentreY()=0; virtual void SetCentre(float x, float y)=0; virtual void Draw(float x, float y)=0; virtual void Draw(float x, float y, float angle)=0; virtual […]

在静态方法里面不能访问私有类成员?

我有以下设置: //.h class Cell { private: POINT mCellStartingPoint; int mXoffset; int mYoffset; public: static void DrawRowOfPixels(int yoff); Cell(); ~Cell(); }; //.cpp void Cell::DrawRowOfPixels(int yoff) { HDC dc = GetDC(NULL); COLORREF red = 0xFF0000; for(int i = mCellStartingPoint.x; i < mXoffset; i++) { SetPixel(dc, mCellStartingPoint.x + i, mCellStartingPoint + yoff, red); } } 但是,在.cpp文件中实现DrawRowOfPixels()方法时,我得到Cell类的所有成员variables的错误。 (即mCellStartingpoint,mXoffset和mYoffset) 错误C2228:'.x'的左边必须有class […]

如何找出类名和平铺的程序在C + +?

问题是如何从程序的运行程序和标题中find类名,我知道已经存在一些像Visual Studio中的windowse或spy ++这样的扫描工具,但是我问你是如何使自己的源程序代码,使用什么函数,有没有一些开源的程序可以帮助? 代码欣赏,链接的也:)

断点不会被打中。 没有与此行关联的可执行代码

我有一个.h文件中的类: class Blah { public: Blah(){} virtual ~Blah(){} void WriteMessage( bool MessageReceived ) { if(MessageReceived) { cout << "Message Recieved\n"; } } }; 我试图弄清楚为什么我的代码不工作,所以我在WriteMessage()函数内的条件上设置了一个断点,但是一旦我开始在debugging模式下运行项目,断点就会消失,并提示它的工具提示说过: 断点不会被打中。 没有与此行关联的可执行代码。 我不知道为什么发生这种情况,因为其他类的所有其他成员函数在.h文件中执行时工作得很好。 这是什么原因造成的? 编辑:好的,按照要求,这是我正在使用的真实代码的精简版本: VimbaBridgeAPI.h (.dll的头文件) #pragma once #ifdef VIMBABRIDGEAPI_EXPORTS #define VIMBABRIDGEAPI_API __declspec(dllexport) #else #define VIMBABRIDGEAPI_API __declspec(dllimport) #endif #include "AlCamIncludes.h" #include "VimbaSystem.h" //////////////////////////////////////////// // Global Variables /////////////////////// //////////////////////////////////////////// extern HBITMAP […]