Search Results

Search found 1632 results on 66 pages for 'cpp'.

Page 49/66 | < Previous Page | 45 46 47 48 49 50 51 52 53 54 55 56  | Next Page >

  • Forward declaring an enum in c++

    - by szevvy
    Hi guys, I'm trying to do something like the following: enum E; void Foo(E e); enum E {A, B, C}; which the compiler rejects. I've had a quick look on Google and the consensus seems to be "you can't do it", but I can't understand why. Can anyone explain? Many thanks. Clarification 2: I'm doing this as I have private methods in a class that take said enum, and I do not want the enum's values exposed - so, for example, I do not want anyone to know that E is defined as enum E { FUNCTIONALITY_NORMAL, FUNCTIONALITY_RESTRICTED, FUNCTIONALITY_FOR_PROJECT_X } as project X is not something I want my users to know about. So, I wanted to forward declare the enum so I could put the private methods in the header file, declare the enum internally in the cpp, and distribute the built library file and header to people. As for the compiler - it's GCC.

    Read the article

  • What does this C++ code mean

    - by Markus Orreilly
    I was trying to understand how webkit parses urls, and I'm having a hard time making heads or tails of this: Vector<char, 4096> buffer(fragmentEnd * 3 + 1); This line is on line 1214 (you can see it here: http://trac.webkit.org/browser/trunk/WebCore/platform/KURL.cpp#L1214). I get that it's making a vector of type char, with each entry being an array of char 4096 bytes large, but I don't get the buffer(fragmentEnd * 3 + 1) part. I think that it confuses me most b/c I can't find where the buffer variable is instantiated anywhere (shouldn't it be something more like Vector<char, 4096> buffer = new Vector<char, 4096>(...)? Thanks in advance

    Read the article

  • [Qt] How to make another window pop up that extends QWidget as opposed to QDialog?

    - by Graphics Noob
    So far I've only had my main window pop up other windows that were QDialogs and I'm not getting it to work with a QWidget. The other window I want to display was designed with the Form Editor, then wrapped in a class called ResultViewer which extends QWidget (as opposed to QDialog). What I want is to have the ResultViewer show its ui in a seperate window. Now when I try to display it the ResultViewer ui just pops up in the main window on top of the mainwindow ui. The code I'm using to display it is this (in my mainwindow.cpp file) ResultViewer * rv = new ResultView(this); rv->show(); The constructor for the ResultViewer looks like this ResultViewer::ResultViewer(QWidget * parent) : QWidget(parent), ui(new Ui::ResultViewer) { ui->setupUi(this); } I've looked through the QWidget documentation a bit but the only thing I can find that may be related is the QWidget::window() function, but the explanation isn't very clear, it just gives an example of changing the title of a window.

    Read the article

  • Fast comparison of char arrays?

    - by StackedCrooked
    I'm currently working in a codebase where IPv4 addresses are represented as pointers to u_int8. The equality operator is implemented like this: bool Ipv4Address::operator==(const u_int8 * inAddress) const { return (*(u_int32*) this->myBytes == *(u_int32*) inAddress); } This is probably the fasted solution, but it causes the GCC compiler warning: ipv4address.cpp:65: warning: dereferencing type-punned pointer will break strict-aliasing rules How can I rewrite the comparison correctly without breaking strict-aliasing rules and without losing performance points? I have considered using either memcmp or this macro: #define IS_EQUAL(a, b) \ (a[0] == b[0] && a[1] == b[1] && a[2] == b[2] && a[3] == b[3]) I'm thinking that the macro is the fastest solution. What do you recommend?

    Read the article

  • How to call C++ function from C?

    - by claws
    I know this. Calling C function from C++: If my application was in C++ and I had to call functions from a library written in C. Then I would have used //main.cpp extern "C" void C_library_function(int x, int y);//prototype C_library_function(2,4);// directly using it. This wouldn't mangle the name C_library_function and linker would find the same name in its input *.lib files and problem is solved. Calling C++ function from C??? But here I'm extending a large application which is written in C and I need to use a library which is written in C++. Name mangling of C++ is causing trouble here. Linker is complaining about the unresolved symbols. Well I cannot use C++ compiler over my C project because thats breaking lot of other stuff. What is the way out? By the way I'm using MSVC

    Read the article

  • [c++] Resolving namespace conflicts

    - by Kyle
    I've got a namespace with a ton of symbols I use, but I want to overwrite one of them: external_library.h namespace lottaStuff { class LotsOfClasses {}; class OneMoreClass {}; }; my_file.h using namespace lottaStuff; namespace myCustomizations { class OneMoreClass {}; }; my_file.cpp using myCustomizations::OneMoreClass; int main() { OneMoreClass foo; // error: reference to 'OneMoreClass' is ambiguous return 0; } How do I get resolve the 'ambiguous' error without resorting to replacing 'using namespace lottaStuff' with a thousand individual "using xxx;" statements?

    Read the article

  • Dynamic-linked DLL needs to share a global variable with its caller.

    - by Fabian Wickborn
    I have a static library libStatic that defines a global variable like this Header file libStatic/globals.h: extern int globvar; Code file libStatic/globals.cpp: int globvar = 42; The DLL libDynamic and the executable runner are using this global variable. Furtheron, libDynamic is linked at run-time into runner (via LoadLibrary(), GetProcAddress(), and the works...) I understand this will lead to globvar being created twice, once in the heap of runner and once in the heap of libDynamic, which is of course very undesirable. Is there a good away around this? How can I ensure that libDynamic and runner are using the same globvar?

    Read the article

  • How to use a variable inside a _T wrapper?

    - by karikari
    I want to make the hostname part of this string to be variable.. Currently, it is only fix to this URL: _T(" --url=http://www.myurl.com/ --out=c:\\current.png"); I want to make something like this, so the URL is changeable.. _T(" --url=http://www." + myurl + "/ --out=c:\\current.png"); update. Below is my latest attempt: CString one = _T(" --url=http://www."); CString two(url->bstrVal); CString three = _T("/ --out=c:\\current.png"); CString full = one + two + three; ShellExecute(0, _T("open"), // Operation to perform _T("c:\\IECapt"), // Application name _T(full),// Additional parameters 0, // Default directory SW_HIDE); The error is : Error 1 error C2065: 'Lfull' : undeclared identifier c:\test.cpp

    Read the article

  • Problem with Initializing Consts

    - by UdiM
    This code, when compiled in xlC 8.0 (on AIX 6.1), produces the wrong result. It should print 12345, but instead prints 804399880. Removing the const in front of result makes the code work correctly. Where is the bug? #include <stdio.h> #include <stdlib.h> #include <string> long int foo(std::string input) { return strtol(input.c_str(), NULL, 0); } void bar() { const long int result = foo("12345"); printf("%u\n", result); } int main() { bar(); return 0; } Compilation command: /usr/vacpp/bin/xlC example.cpp -g

    Read the article

  • QConnect find no such slot on QCombobox by Qt Creater

    - by user2534154
    I create a window inherit from QWidget I set grid layout to that Window I make a function called handleHeroChange(int index) in public slot inside that window I add a Qcombobox to call that function handleHeroChange(int index). Qtcreator keep telling: QObject::connect: No such slot QWidget::handleHeroChange(int) in ../Testing/Window.cpp:92 Why did i do wrong? THE CODE: Window::Window(QWidget *parent) : QWidget(parent) { QGridLayout *grid = new QGridLayout(this); QComboBox *comboHeroClass = new QComboBox(); comboHeroClass->addItem("Witcher"); comboHeroClass->addItem("Maurander"); comboHeroClass->setCurrentIndex(1); grid->addWidget(comboHeroClass, 2,3,1,1); QComboBox::connect(comboHeroClass, SIGNAL(currentIndexChanged(int)),this, SLOT(handleHeroChange(int))); } void Window::handleHeroChange(int index){ QPixmap myImage; if(index == 0){ }else if(index == 1){ } }

    Read the article

  • Call a non member funcion on an instance before is constructed.

    - by Tom
    Hi everyone. I'm writing a class, and this doubt came up. Is this undef. behaviour? On the other hand, I'm not sure its recommended, or if its a good practice. Is it one if I ensure no exceptions to be thrown in the init function? //c.h class C{ float vx,vy; friend void init(C& c); public: C(); ~C(); }; //c.cpp C::C() { init(*this); } void init(C& c) //throws() to ensure no exceptions ? { c.vx = 0; c.vy = 0; } Thanks in advance

    Read the article

  • Call a non member function on an instance before is constructed.

    - by Tom
    Hi everyone. I'm writing a class, and this doubt came up. Is this undef. behaviour? On the other hand, I'm not sure its recommended, or if its a good practice. Is it one if I ensure no exceptions to be thrown in the init function? //c.h class C{ float vx,vy; friend void init(C& c); public: C(); }; //c.cpp C::C() { init(*this); } void init(C& c) //throws() to ensure no exceptions ? { c.vx = 0; c.vy = 0; } Thanks in advance

    Read the article

  • simple c++ file opening issue

    - by Robert
    #include <iostream> #include <fstream> using namespace std; int main () { ofstream testfile; testfile.open ("test.txt"); testfile << "success!\n"; testfile.close(); return 0; } 1)called "g++ testfile.cpp" 2)created "test.txt" 3)called "chmod u+x a.out" 4)??? 5)file remains blank. I feel like an idiot for failing at something as trivial as this is supposed to be.

    Read the article

  • Changing the value of a macro at run time

    - by BrandiNo
    I'm working in Visual Studio 2010, using C++ code. What I'm trying to do is change the value of a preprocessor directive during run time, not sure if it's possible but i've tried this.. somefile.h static int mValue = 0; #define POO = mValue; ... #if POO 0 //define class methods #else //define class methods differently } main.cpp main() { //Code calls constructor and methods allowed when POO is 0 //Code increments mValue //Code calls constructor and methods allowed when POO is 1 } How can POO be changed so that class objects uses a different implementation of other methods? Or if it's not possible, what's a another approach to this?

    Read the article

  • aligning extern constants (gcc)

    - by ~buratinas
    I want to make some static constants globally visible. I'm pretty familiar how to do that in C++. The problem is that these constants need to be aligned to some exotic boundary. Do I have to specify the alignment in extern declaration? I'm using GCC4.5 in *.cpp file static const constant_t constant __attribute__((aligned(64))) = {blah,blah,blah}; in *.h file //Which one is correct? extern const constant_t constant; extern const constant_t constant __attribute__((aligned(64)));

    Read the article

  • c++ compilation error

    - by clamp
    hello, i got a compile error which i do not understand. i have a h/cpp file combination that does not contain a class but just defines some utility functions. when i try to use a struct that is defined in another class i get the error: error C2027: use of undefined type so, stripped down to the problem, the h file looks like this namespace A { void foo(B::C::SStruct const & Var); } the definition of SStruct is in a class which is in another h-file, that is of course included. namespace B { Class C { struct SStruct { }; } } what am i missing here? thanks!

    Read the article

  • C++: Where can I define the body for a private function?

    - by Martijn Courteaux
    Hi, I have a header like this (header guards not shown): class GameSystem { public: GameSystem(Game *pcGame); virtual ~GameSystem(); void Setup(); private: void InitGame(); void RunGame(); void ExitGame(); Game *m_pcGame; /* Properties */ int m_nWidth; int m_nHeight; int m_nFps; bool m_bFullscreen; }; Where can I define the body for InitGame(), RunGame() and ExitGame()? Can I define it in my .cpp file? If so, how? Or am I obliged to make their body in my .h file? I'm using Eclipse and I began typing: void GameSystem:: and then he doesn't suggest the private functions.

    Read the article

  • a macro question for c language (#define)

    - by Daniel
    I am reading source code of hoard memory allocator, and in the file of gnuwrapper.cpp, there are the following code #define CUSTOM_MALLOC(x) CUSTOM_PREFIX(malloc)(x) What's the meaning of CUSTOM_PREFIX(malloc)(x)? is CUSTOM_PREFIX a function? But as a function it didn't defined anywhere. If it's variable, then how can we use variable like var(malloc)(x)? more code: #ifndef __GNUC__ #error "This file requires the GNU compiler." #endif #include <string.h> #include <stdlib.h> #include <stdio.h> #include <malloc.h> #ifndef CUSTOM_PREFIX ==> here looks like it's a variable, so if it doesn't define, then define here. #define CUSTOM_PREFIX #endif #define CUSTOM_MALLOC(x) CUSTOM_PREFIX(malloc)(x) ===> what's the meaning of this? #define CUSTOM_FREE(x) CUSTOM_PREFIX(free)(x) #define CUSTOM_REALLOC(x,y) CUSTOM_PREFIX(realloc)(x,y) #define CUSTOM_MEMALIGN(x,y) CUSTOM_PREFIX(memalign)(x,y)

    Read the article

  • Class templating std::set key types

    - by TomFLuff
    I have a class to evaluate set algebra but wish to template it. At the minute it looks a bit like this set.h: template<typename T> class SetEvaluation { public: SetEvaluation<T>(); std::set<T> evaluate(std::string in_expression); } set.cpp template<typename T> std::set<T> SetEvaluation<T>::evaluate(std::string expression) { std::set<T> result; etc etc... } But i'm getting undefined reference errors when compiling. Is it possible to declare the return type as std::set<T> and then pass std::string as the class template param. There are no errors in the class but only when I try to instantiate SetEvaluation<std::string> Can anyone shed light on this problem? thanks

    Read the article

  • lua function as argument in C

    - by Nil
    I'm going to pass a function to another function which should operate with the passed function. For example: handler(fun1("foo",2)) handler(fun2(1e-10)) The handler is something like calling the passed function many times. I'm going to bind handler, fun1, fun2 to C-functions. fun1 and fun2 are going to return some user data with a pointer to some cpp-class so that I can further recover which function was it. The problem now is that fun1 and fun2 are going to be called before passed to handler. But I don't need this, what I need is the kind of function and its parameters. However, I should be able to call fun1 and fun2 alone without handler: fun1("bar",3) fun2(1e-5) Is it possible to get the context the function is called from? While typing the question, I realized I could do following handler(fun1, "foo",2); handler(fun2, 1e-10);

    Read the article

  • Hoard allocator not "working"?

    - by Cowboy
    I'm trying to Hoard allocator to work, but it seems it doesn't. I have a benchmark application that does a lot of dynamic memory management. The execution time for Hoard and glibc memory manager is the same. It makes me wonder if I'm doing the right thing. What I do is... export LD_PRELOAD="/path/libhoard.so" g++ main.cpp -O3 -o bm -lpthread -lrt Shouldn't I have to link to Hoard allocator? Does it matter what path (in LD_PRELOAD) is, or can I have whatever path? I'm running Ubuntu 8.04, and g++ 4.2.4 Cheers

    Read the article

  • The pImpl idiom and Testability

    - by Rimo
    The pImpl idiom in c++ aims to hide the implementation details (=private members) of a class from the users of that class. However it also hides some of the dependencies of that class which is usually regarded bad from a testing point of view. For example if class A hides its implementation details in Class AImpl which is only accessible from A.cpp and AImpl depends on a lot of other classes, it becomes very difficult to unit test class A since the testing framework has no access to the methods of AImpl and also no way to inject dependency into AImpl. This has been a problem for me lately and I am beginning to think that the pImpl idiom and writing testable code don't mix well. Has anyone come across this problem before? and have you found a solution?

    Read the article

  • C++ Vector of vectors

    - by xbonez
    I have a class header file called Grid.h that contains the following 2 private data object: vector<int> column; vector<vector<int>> row; And a public method whose prototype in Grid.h is such: int getElement (unsigned int& col, unsigned int& row); The definition of above mentioned function is defined as such in Grid.cpp: int getElement (unsigned int& col, unsigned int& row) { return row[row][col] ; } When I run the program, I get this error: error C2109: subscript requires array or pointer type Whats going wrong?

    Read the article

  • g++: how to specify preference of library path?

    - by Heinrich Schmetterling
    I'm compiling a c++ program using g++ and ld. I have a .so library I want to be used during linking. However, a library of the same name exists in /usr/local/lib, and ld is choosing that library over the one I'm directly specifying. How can I fix this? For the examples below, my library file is /my/dir/libfoo.so.0. Things I've tried that don't work: my g++ command is "g++ -g -Wall -o my_binary -L/my/dir -lfoo bar.cpp" adding /my/dir to the beginning or end of my $PATH env variable adding /my/dir/libfoo.so.0 as an argument to g++ Thanks.

    Read the article

  • Are unspecified and undefined behavior required to be consistent between compiles?

    - by sharptooth
    Let's pretend my program contains a specific construct the C++ Standard states to be unspecified behavior. This basically means the implementation has to do something reasonable but is allowed not to document it. But is the implementation required to produce the same behavior every time it compiles a specific construct with unspecified behavior or is it allowed to produce different behavior in different compiles? What about undefined behavior? Let's pretend my program contains a construct that is UB according to the Standard. The implementation is allowed to exhibit any behavior. But can this behavior differ between compiles of the same program on the same compiler with same settings in the same environment? In other words, if I dereference a null pointer on line 78 in file X.cpp and the implementation formats the drive in such case does it mean that it will do the same after the program is recompiled?

    Read the article

< Previous Page | 45 46 47 48 49 50 51 52 53 54 55 56  | Next Page >