Search Results

Search found 2681 results on 108 pages for 'equality operator'.

Page 82/108 | < Previous Page | 78 79 80 81 82 83 84 85 86 87 88 89  | Next Page >

  • functor returning 0

    - by Jon
    I've recently started teaching myself the standard template library. I was curious as to why the GetTotal() method in this class is returning 0? ... class Count { public: Count() : total(0){} void operator() (int val){ total += val;} int GetTotal() { return total;} private: int total; }; void main() { set<int> s; Count c; for(int i = 0; i < 10; i++) s.inset(i); for_each(s.begin(), s.end(), c); cout << c.GetTotal() << endl; }

    Read the article

  • Replacing objects, handling clones, dealing with write logs

    - by Alix
    Hi everyone, I'm dealing with a problem I can't figure out how to solve, and I'd love to hear some suggestions. [NOTE: I realise I'm asking several questions; however, answers need to take into account all of the issues, so I cannot split this into several questions] Here's the deal: I'm implementing a system that underlies user applications and that protect shared objects from concurrent accesses. The application programmer (whose application will run on top of my system) defines such shared objects like this: public class MyAtomicObject { // These are just examples of fields you may want to have in your class. public virtual int x { get; set; } public virtual List<int> list { get; set; } public virtual MyClassA objA { get; set; } public virtual MyClassB objB { get; set; } } As you can see they declare the fields of their class as auto-generated properties (auto-generated means they don't need to implement get and set). This is so that I can go in and extend their class and implement each get and set myself in order to handle possible concurrent accesses, etc. This is all well and good, but now it starts to get ugly: the application threads run transactions, like this: The thread signals it's starting a transaction. This means we now need to monitor its accesses to the fields of the atomic objects. The thread runs its code, possibly accessing fields for reading or writing. If there are accesses for writing, we'll hide them from the other transactions (other threads), and only make them visible in step 3. This is because the transaction may fail and have to roll back (undo) its updates, and in that case we don't want other threads to see its "dirty" data. The thread signals it wants to commit the transaction. If the commit is successful, the updates it made will now become visible to everyone else. Otherwise, the transaction will abort, the updates will remain invisible, and no one will ever know the transaction was there. So basically the concept of transaction is a series of accesses that appear to have happened atomically, that is, all at the same time, in the same instant, which would be the moment of successful commit. (This is as opposed to its updates becoming visible as it makes them) In order to hide the write accesses in step 2, I clone the accessed field (let's say it's the field list) and put it in the transaction's write log. After that, any time the transaction accesses list, it will actually be accessing the clone in its write log, and not the global copy everyone else sees. Like this, any changes it makes will be done to the (invisible) clone, not to the global copy. If in step 3 the commit is successful, the transaction should replace the global copy with the updated list it has in its write log, and then the changes become visible for everyone else at once. It would be something like this: myAtomicObject.list = updatedCloneOfListInTheWriteLog; Problem #1: possible references to the list. Let's say someone puts a reference to the global list in a dictionary. When I do... myAtomicObject.list = updatedCloneOfListInTheWriteLog; ...I'm just replacing the reference in the field list, but not the real object (I'm not overwriting the data), so in the dictionary we'll still have a reference to the old version of the list. A possible solution would be to overwrite the data (in the case of a list, empty the global list and add all the elements of the clone). More generically, I would need to copy the fields of one list to the other. I can do this with reflection, but that's not very pretty. Is there any other way to do it? Problem #2: even if problem #1 is solved, I still have a similar problem with the clone: the application programmer doesn't know I'm giving him a clone and not the global copy. What if he puts the clone in a dictionary? Then at commit there will be some references to the global copy and some to the clone, when in truth they should all point to the same object. I thought about providing a wrapper object that contains both the cloned list and a pointer to the global copy, but the programmer doesn't know about this wrapper, so they're not going to use the pointer at all. The wrapper would be like this: public class Wrapper<T> : T { // This would be the pointer to the global copy. The local data is contained in whatever fields the wrapper inherits from T. private T thisPtr; } I do need this wrapper for comparisons: if I have a dictionary that has an entry with the global copy as key, if I look it up with the clone, like this: dictionary[updatedCloneOfListInTheWriteLog] I need it to return the entry, that is, to think that updatedCloneOfListInTheWriteLog and the global copy are the same thing. For this, I can just override Equals, GetHashCode, operator== and operator!=, no problem. However I still don't know how to solve the case in which the programmer unknowingly inserts a reference to the clone in a dictionary. Problem #3: the wrapper must extend the class of the object it wraps (if it's wrapping MyClassA, it must extend MyClassA) so that it's accepted wherever an object of that class (MyClass) would be accepted. However, that class (MyClassA) may be final. This is pretty horrible :$. Any suggestions? I don't need to use a wrapper, anything you can think of is fine. What I cannot change is the write log (I need to have a write log) and the fact that the programmer doesn't know about the clone. I hope I've made some sense. Feel free to ask for more info if something needs some clearing up. Thanks so much!

    Read the article

  • If-statement with logical OR

    - by exiter2000
    public class Test{ public static void main(String args[]){ int a = 0; int b = 1; int c = 10; if ( a == 0 || b++ == c ){ a = b + c; }else{ b = a + c; } System.out.println("a: " + a + ",b: " + b + ",c: " + c); } } Ok, this is Java code and the output is a: 11,b: 1,c: 10 And I believe the C acts same as Java in this case That is because second condition(b++ == c) would never executed if the first condition is true in 'OR' operator. There is a "NAME" for this. I just don't remember what it is. Does anyone know what this is called?? Thanks in advance

    Read the article

  • CompareValidator works in listview's editItemTemplate but not in insertitemtemplate

    - by Sam
    Hi, I have a validation problem I have a listview, in the edit item template I have two composite controls with a textbox inside I put a comparevalidator on it <asp:CompareValidator ID="myCompareValidator" runat="server" ControlToValidate="mycompositecontrol1" ControlToCompare="mycompositecontrol2" Operator="GreaterThanEqual" Type="Date" Display="Dynamic" ErrorMessage="there is an error !" Text="!" ValidationGroup="myValidationGroup" /> It works great ! so I do exactly the same operation in the InserItemTemplate (It's a copy/paste) but this time, it doesn't work, I have no error message in my validationsummary and near my control to validate! If you know that problem, help me please thanks in advance

    Read the article

  • HASHREF in Perl

    - by Uri
    I'm trying to decrypt a Perl code which I'm not familiar with, somehow related to HashRef. I'm using Amazon::S3, but my question is a general Perl question. See the code below: use Amazon::S3; my $s3 = Amazon::S3-new( ... ); my $response = $s3-buckets; Documentation (here) sais, about s3-buckets: Returns undef on error, else HASHREF of results The following line is working for me, but I don't understand why: for $b in ( @ { $response-{buckets} } ) { print "bucket: " . $b-bucket . "\n"; } I'm buzzled by each operator on the first line. What type exactly are $response, $respone-{bucket}. Looks like the expression within the 'for' is an array, but I don't understand this syntax: @{ ... }?

    Read the article

  • VS 2008 linking error

    - by AvatarBlue
    I'm using Visual Studio 2008 C++ and working on a dll project. Debug compiled and linked perfectly but when I compile the release version, it shows this: VImgPtr.obj : error LNK2001: unresolved external symbol @__security_check_cookie@4 VLibraryPtr.obj : error LNK2001: unresolved external symbol "void __cdecl operator delete[](void *)" (??_V@YAXPAX@Z) D:\Source Code\VImgLib\Release-vc9u\VImgLib-vc9u.dll : fatal error LNK1120: 2 unresolved externals If I selected Multi-threaded (/MT) in "C/C++-Code Generation tab), it linked ok. The problem is only when I choose Multi-threaded DLL (/MD). I'm releasing a dll, so should be /MD right?

    Read the article

  • I need to do a BASICE For Loop algorithm for a java Pyramid

    - by user1665119
    Question 2. USE THE FOR LOOP. Design and write an algorithm that will read a single positive number from the keyboard and will then print a pyramid out on the screen. The pyramid will need to be of a height equal in lines to the number inputted by the operator. Your program is not to test for negative numbers, nor is it to cater for them. For your test, use the number 7. If you would like to take the problem further, try 18 and watch what happens. Example input: 4 Example output: 1 121 12321 1234321

    Read the article

  • How to use a object whose copy constructor and copy assignment is private?

    - by coanor
    In reading TCPL, I got a problem, as the title refered, and then 'private' class is: class Unique_handle { private: Unique_handle& operator=(const Unique_handle &rhs); Unique_handle(const Unique_handle &rhs); public: //... }; the using code is: struct Y { //... Unique_handle obj; }; and I want to execute such operations: int main() { Y y1; Y y2 = y1; } although, these code are come from TCPL, but I still can not got the solution... Can anybody help me, appreciate.

    Read the article

  • Creating ostream manipulators for a specific class

    - by petersohn
    I have a class that is derived from ostream: class my_ostream: public std::ostream { // ... } I want to make a manipulator (for example do_something), that works specifically to this class, like this: my_ostream s; s << "some text" << do_something << "some more text"; I did the following: std::ostream &do_something(std::ostream &os) { my_ostream *s = dynamic_cast<my_ostream*>(&os); if (s != NULL) { // do something } return os; } This works, but is rather ugly. I tried the following: my_ostream &do_something(my_ostream &s) { // do something return s; } This doesn't work. I also tried another approach: class my_ostream: public std::ostream { // ... my_ostream &operator<<(const do_something & x) { // do something return *this; } } This still doesn't work.

    Read the article

  • How do I handle editing of custom types in a C# datagridview?

    - by Ian Hopkinson
    I have a datagridview in which one column contains a custom class, which I have set using: dgvPeriods.Columns[1].ValueType = typeof(ExDateTime); It is rigged up to display correctly by handling the CellFormatting event, but I'm unsure what event to handle for cell editing. In the absence of doing anything I get a FormatException as the datagridview tries to convert String to ExDateTime as I try to move focus out of the edited cell. I tried adding type conversion to my ExDateTime custom class: public static implicit operator ExDateTime(string b) { return new ExDateTime(b); } But this this didn't work. I also tried handling the DataError event, but this seems to fire too late. The datagridview is not databound.

    Read the article

  • LINQ-to-SQL: Searching against a CSV

    - by Peter Bridger
    I'm using LINQtoSQL and I want to return a list of matching records for a CSV contains a list of IDs to match. The following code is my starting point, having turned a CSV string in a string array, then into a generic list (which I thought LINQ would like) - but it doesn't: Error Error 22 Operator '==' cannot be applied to operands of type 'int' and 'System.Collections.Generic.List<int>' C:\Documents and Settings\....\Search.cs 41 42 C:\...\ Code DataContext db = new DataContext(); List<int> geographyList = new List<int>( Convert.ToInt32(geography.Split(',')) ); var geographyMatches = from cg in db.ContactGeographies where cg.GeographyId == geographyList select new { cg.ContactId }; Where do I go from here?

    Read the article

  • C++'s std::string pools, debug builds? std::string and valgrind problems

    - by Den.Jekk
    Hello, I have a problem with many valgrind warnings about possible memory leaks in std::string, like this one: 120 bytes in 4 blocks are possibly lost in loss record 4,192 of 4,687 at 0x4A06819: operator new(unsigned long) (vg_replace_malloc.c:230) by 0x383B89B8B0: std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator<char> const&) (in /usr/lib64/libstdc++.so.6.0.8) by 0x383B89C3B4: (within /usr/lib64/libstdc++.so.6.0.8) by 0x383B89C4A9: std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, unsigned long, std::allocator<char> const&) (in /usr/lib64/libstdc++.so.6.0.8) I'm wondering: does std::string (GCC 4.1.2) use any memory pools? if so, is there any way to disable the pools (in form of a debug build etc.)? Regards, Den

    Read the article

  • Dynamic allocated array is not freed

    - by Stefano
    I'm using the code above to dynamically allocate an array, do some work inside the function, return an element of the array and free the memory outside of the function. But when I try to deallocate the array it doesn't free the memory and I have a memory leak. The debugger pointed to the myArray variable shows me the error CXX0030. Why? struct MYSTRUCT { char *myvariable1; int myvariable2; char *myvariable2; .... }; void MyClass::MyFunction1() { MYSTRUCT *myArray= NULL; MYSTRUCT *myElement = this->MyFunction2(myArray); ... delete [] myArray; } MYSTRUCT* MyClass::MyFunction2(MYSTRUCT *array) { array = (MYSTRUCT*)operator new(bytesLength); ... return array[X]; }

    Read the article

  • AspectJ join point with simple types

    - by Jon
    Hi! Are there defined join points in arithmetics that I can catch? Something like: int a = 4; int b = 2; int c = a + b; Can I make a pointcut that catches any one of those lines? And what context will I be able to get? I would like to add a before() to all int/float/double manipulation done in a particular method on a class, is that possible. I see in the AspectJ docs that there are defined join points for object initialization and method calls. Is declaring an int an object initialization and does the + operator count as a method call? Thanks!

    Read the article

  • CUDA & VS2010 problem

    - by Kristian D'Amato
    I have scoured the internets looking for an answer to this one, but couldn't find any. I've installed the CUDA 3.2 SDK (and, just now, CUDA 4.0 RC) and everything seems to work fine after long hours of fooling around with include directories, NSight, and all the rest. Well, except this one thing: it keeps highlighting the <<< >>> operator as a mistake. Only on VS2010--not on VS2008. On VS2010 I also get several warnings of the following sort: C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\include\xdebug(109): warning C4251: 'std::_String_val<_Ty,_Alloc>::_Alval' : class 'std::_DebugHeapAllocator<_Ty>' needs to have dll-interface to be used by clients of class 'std::_String_val<_Ty,_Alloc>' Anyone know how this can be fixed?

    Read the article

  • How to display Preferences in a View

    - by Sybiam
    I'm building some sort of wizard to create user accounts in Sync and Manage account. I use a ViewFlipper my activity has to be an AccountAuthenticatorActivity. That said it also means I can't inherit PreferenceActivity. So I looked up in the code of PreferenceActivity and I believe it should be possible to have a PreferenceView that inherit from ListView. The Activity part of PreferenceActivity isn't really needed as far as I know. Though the PreferenceManager is what really blocks me. private PreferenceManager onCreatePreferenceManager() { PreferenceManager preferenceManager = new PreferenceManager(this, FIRST_REQUEST_CODE); preferenceManager.setOnPreferenceTreeClickListener(this); return preferenceManager; } This function imply that we can instatiate PreferenceManager using the operator new. Apparently, the sdk hide the constructor of the PreferenceManager. I'm kind of confused. Is there a way to inflate my preferences and display them without PreferenceActivity?

    Read the article

  • Forcing a templated object to construct from a pointer

    - by SalamiArmi
    I have a fictional class: template<typename T> class demonstration { public: demonstration(){} ... T *m_data; } At some point in the program's execution, I want to set m_data to a big block of allocated memory and construct an object T there. At the moment, I've been using this code: void construct() { *m_data = T(); } Which I've now realised is probably not the best idea... wont work under certain cirumstances, if T has a private assignment operator for example. Is there a normal/better way to do what I'm attempting here?

    Read the article

  • Is this a correct implementation of singleton C++?

    - by Kamal
    class A{ static boost::shared_ptr<A> getInstance(){ if(pA==NULL){ pA = new A(); } return boost::shared_ptr(pA); } //destructor ~A(){ delete pA; pA=NULL; } private: A(){ //some initialization code } //private assigment and copy constructors A(A const& copy); // Not Implemented A& operator=(A const& copy); // Not Implemented static A* pA; }; A* A::pA = NULL;

    Read the article

  • What is Ruby's double-colon (::) all about?

    - by Meltemi
    I'd probably be able to answer this for myself if "::" wasn't so hard to Google. Didn't see anything on SO so thought I'd try my luck. What is this double-colon :: all about? I see it everywhere in Rails: class User < ActiveRecord::Base or… ActionController::Routing::Routes.draw do |map| I found a definition from this guy: The :: is a unary operator that allows: constants, instance methods and class methods defined within a class or module, to be accessed from anywhere outside the class or module. but that just leads to more questions. What good is scope (private, protected) if you can just use :: to expose anything?

    Read the article

  • Calling this[int index] via reflection

    - by tkutter
    I try to implement a reflection-based late-bound library to Microsoft Office. The properties and methods of the Offce COM objects are called the following way: Type type = Type.GetTypeFromProgID("Word.Application"); object comObject = Activator.CreateInstance(type); type.InvokeMember(<METHOD NAME>, <BINDING FLAGS>, null, comObject, new object[] { <PARAMS>}); InvokeMember is the only possible way because Type.GetMethod / GetProperty works improperly with the COM objects. Methods and properties can be called using InvokeMember but now I have to solve the following problem: Method in the office-interop wrapper: Excel.Workbooks wb = excel.Workbooks; Excel.Workbook firstWb = wb[0]; respectively foreach(Excel.Workbook w in excel.Workbooks) // doSmth. How can I call the this[int index] operator of Excel.Workbooks via reflection?

    Read the article

  • What happens when a computer program runs?

    - by gaijinco
    I know the general theory but I can't fit in the details. I know that a program resides in the secondary memory of a computer. Once the program begins execution it is entirely copied to the RAM. Then the processor retrive a few instructions (it depends on the size of the bus) at a time, puts them in registers and executes them. I also know that a computer program uses two kinds of memory: stack and heap, which are also part of the primary memory of the computer. The stack is used for non-dynamic memory, and the heap for dynamic memory (for example, everything related to the new operator in C++) What I can't understand is how those two things connect. At what point is the stack used for the execution of the instructions? Instructions go from the RAM, to the stack, to the registers?

    Read the article

  • C++ refactor common code with one different statement

    - by user231536
    I have two methods f(vector<int>& x, ....) and g(DBConn& x, ....) where the (....) parameters are all identical. The code inside the two methods are completely identical except for one statement where we do different actions based on the type of x: in f(): we do x.push_back(i) in g(): we do x.DeleteRow(i) What is the simplest way to extract the common code into one method and yet have the two different statements? I am thinking of having a templated functor that overloads operator () (int a) but that seems overkill.

    Read the article

  • On Memory Allocation and C++

    - by Arpan
    And I quote from MSDN http://msdn.microsoft.com/en-us/library/aa366533(VS.85).aspx: The malloc function has the disadvantage of being run-time dependent. The new operator has the disadvantage of being compiler dependent and language dependent. Now the questions folks: a) What do we mean that malloc is run-time dependent? What kind of dynamic memory allocation functions can be independent of run-time? This statement sounds real strange. b) new is language dependent? Of course it should be right? Are HeapAlloc, LocalAlloc etc language independent? c) From a pure performance perspective are the MSVC provided routines preferable? Arpan

    Read the article

  • Unreachable code detected in case statement

    - by alex
    I have a code: protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { switch (keyData) { case Keys.Alt|Keys.D1: if (this._condition1) { return true; } else { return base.ProcessCmdKey(ref msg, keyData); } break; case Keys.Control |Keys.U: if (this._condition2) { return true; } else { return base.ProcessCmdKey(ref msg, keyData); } break; default: return base.ProcessCmdKey(ref msg, keyData); } return true; It gives me "unreachable code detected" warning on breaks. Is it good practice not to use break operator here ? I don't want to turn off "unreachable code detected" warning. PS: There are many case in my ProcessCmdKey method.

    Read the article

  • How to call a bool function...

    - by Gerri
    Hello, I did not see anything that address my particular code problem. I have a bool function in a class; the bool function is named: bool Triplet::operator ==(const Triplet& operand)const And I am trying to call it in Main but having problems just getting the call right. Apparently if I leave out any thing in the wording it gives an error that I have too few aruguments and if I try to use the entire wording of the function, I get the error that I need a semi-colon, but I already have a semi-colon at the end of the call, so I know that something else is wrong and I simply cannot figure out what is wrong! Any help would be appreciated! Thanks in advance.

    Read the article

< Previous Page | 78 79 80 81 82 83 84 85 86 87 88 89  | Next Page >