Search Results

Search found 19376 results on 776 pages for 'char array'.

Page 159/776 | < Previous Page | 155 156 157 158 159 160 161 162 163 164 165 166  | Next Page >

  • Adding two different Objects by overloading operator+ C++

    - by lampshade
    Hello, I've been trying to figure out how to add a private member from Object A, to a private member from Object B. Both Cat and Dog Class's inheriate from the base class Animal. I have a thrid class 'MyClass', that I want to inheriate the private members of the Cat and Dog class. So in MyClass, I have a friend function to overload the + operator. THe friend function is defined as follows: MyClass operator+(const Dog &dObj, const Cat &cObj); I want to access dObj.age and cObj.age within the above function, invoke by this statement in main: mObj = dObj + cObj; Here is the entire source for a complete reference into the class objects: #include <iostream> #include <vld.h> using namespace std; class Animal { public : Animal() {}; virtual void eat() = 0 {}; virtual void walk() = 0 {}; }; class Dog : public Animal { public : Dog(const char * name, const char * gender, int age); Dog() : name(NULL), gender(NULL), age(0) {}; virtual ~Dog(); void eat(); void bark(); void walk(); private : char * name; char * gender; int age; }; class Cat : public Animal { public : Cat(const char * name, const char * gender, int age); Cat() : name(NULL), gender(NULL), age(0) {}; virtual ~Cat(); void eat(); void meow(); void walk(); private : char * name; char * gender; int age; }; class MyClass : private Cat, private Dog { public : MyClass() : action(NULL) {}; void setInstance(Animal &newInstance); void doSomething(); friend MyClass operator+(const Dog &dObj, const Cat &cObj); private : Animal * action; }; Cat::Cat(const char * name, const char * gender, int age) : name(new char[strlen(name)+1]), gender(new char[strlen(gender)+1]), age(age) { if (name) { size_t length = strlen(name) +1; strcpy_s(this->name, length, name); } else name = NULL; if (gender) { size_t length = strlen(gender) +1; strcpy_s(this->gender, length, gender); } else gender = NULL; if (age) { this->age = age; } } Cat::~Cat() { delete name; delete gender; age = 0; } void Cat::walk() { cout << name << " is walking now.. " << endl; } void Cat::eat() { cout << name << " is eating now.. " << endl; } void Cat::meow() { cout << name << " says meow.. " << endl; } Dog::Dog(const char * name, const char * gender, int age) : name(new char[strlen(name)+1]), gender(new char[strlen(gender)+1]), age(age) { if (name) { size_t length = strlen(name) +1; strcpy_s(this->name, length, name); } else name = NULL; if (gender) { size_t length = strlen(gender) +1; strcpy_s(this->gender, length, gender); } else gender = NULL; if (age) { this->age = age; } } Dog::~Dog() { delete name; delete gender; age = 0; } void Dog::eat() { cout << name << " is eating now.. " << endl; } void Dog::bark() { cout << name << " says woof.. " << endl; } void Dog::walk() { cout << name << " is walking now.." << endl; } void MyClass::setInstance(Animal &newInstance) { action = &newInstance; } void MyClass::doSomething() { action->walk(); action->eat(); } MyClass operator+(const Dog &dObj, const Cat &cObj) { MyClass A; //dObj.age; //cObj.age; return A; } int main() { MyClass mObj; Dog dObj("B", "Male", 4); Cat cObj("C", "Female", 5); mObj.setInstance(dObj); // set the instance specific to the object. mObj.doSomething(); // something happens based on which object is passed in dObj.bark(); mObj.setInstance(cObj); mObj.doSomething(); cObj.meow(); mObj = dObj + cObj; return 0; }

    Read the article

  • Contains Query into MongoDB Array using Mongoose

    - by Nilay Parikh
    I'm trying to query into following document and want to list all document which contains TaxonomyID "1" in "TaxonomyIDs" field. ... "Slug" : "videosecu-600tvl-outdoor-security-surveillance", "Category" : "Digital Cameras", "SubCategory" : "Surveillance Cameras", "Segment" : "", "Usabilities" : [ "Dome Cameras", "Night Vision" ], "TaxonomyIDs" : [ 1, 12, 20, 21, 13 ], "Brand" : "VideoSecu", ... Totally stuck!

    Read the article

  • How to iterate over an array of objects without foreach and ArrayAccess

    - by kenny99
    Hi, I'm having to develop a site on PHP 5.1.6 and I've just come across a bug in my site which isn't happening on 5.2+. When using foreach() to iterate over an object, I get the following error: "Fatal error: Objects used as arrays in post/pre increment/decrement must return values by reference..." Does anyone know how to convert the following foreach loop to a construct which will work with 5.1.6? Thanks in advance! foreach ($post['commercial_brands'] as $brand) { $comm_food = new Commercial_food_Model; $comm_food->brand = $brand; $comm_food->feeding_type_id = $f_type->id; $comm_food->save(); }

    Read the article

  • Extracting URLs (to array) in Ruby

    - by FearMediocrity
    Good afternoon, I'm learning about using RegEx's in Ruby, and have hit a point where I need some assistance. I am trying to extract 0 to many URLs from a string. This is the code I'm using: sStrings = ["hello world: http://www.google.com", "There is only one url in this string http://yahoo.com . Did you get that?", "The first URL in this string is http://www.bing.com and the second is http://digg.com","This one is more complicated http://is.gd/12345 http://is.gd/4567?q=1", "This string contains no urls"] sStrings.each do |s| x = s.scan(/((http|https):\/\/[a-z0-9]+([\-\.]{1}[a-z0-9]+)*\.[a-z]{2,5}(([0-9]{1,5})?\/.[\w-]*)?)/ix) x.each do |url| puts url end end This is what is returned: http://www.google.com http .google nil nil http://yahoo.com http nil nil nil http://www.bing.com http .bing nil nil http://digg.com http nil nil nil http://is.gd/12345 http nil /12345 nil http://is.gd/4567 http nil /4567 nil What is the best way to extract only the full URLs and not the parts of the RegEx? Thanks Jim

    Read the article

  • An array of LPWSTR pointers, not working right.

    - by BigBirdy
    Declare: LPWSTR** lines= new LPWSTR*[totalLines]; then i set using: lines[totalLines]=&totalText; SetWindowText(totalChat,(LPWSTR)lines[totalLines]); totalLines++; Now I know totalText is right, cause if i SetWindowText using totalText it works fine. I need the text in totalLines too. I'm also doing: //accolating more memory. int orgSize=size; LPWSTR** tempArray; if (totalLines == size) { size *= 2; tempArray = new LPWSTR*[size]; memcpy(tempArray, lines,sizeof(LPWSTR)*orgSize); delete [] lines; lines = tempArray; } to allocate more memory when needed. My problem is that the lines is not getting the right data. It works for the first time around then it get corrupted. I thought at first i was overwriting but totalLines is increase. Hopefully this is enough information.

    Read the article

  • Object in Array is not recognised as having "methods"

    - by kevin Mendoza
    I got my application working Awhile back, but after completely and accidentally deleting it, I have tried to create it from square one. unfortunately my rewritten program is a bit cranky; does anyone see or know the possible sources of error? Also, my if statements are acting up. -(void)loadAnnotations { CLLocationCoordinate2D workingCoordinate; iProspectLiteAppDelegate *appDelegate = (iProspectLiteAppDelegate *)[[UIApplication sharedApplication] delegate]; NSMutableArray *mines =[[NSMutableArray alloc] initWithArray:(NSMutableArray *) appDelegate.mines]; BOOL gold = [[NSUserDefaults standardUserDefaults] boolForKey:@"goldControl"]; BOOL silver = [[NSUserDefaults standardUserDefaults] boolForKey:@"silverControl"]; BOOL copper = [[NSUserDefaults standardUserDefaults] boolForKey:@"copperControl"]; for(id mine in mines) { NSLog(@"in the loop"); workingCoordinate.latitude = [[mine latitudeInitial] doubleValue]; workingCoordinate.longitude = [[mine longitudeInitial] doubleValue]; iProspectLiteAnnotation *tempMine = [[iProspectLiteAnnotation alloc] initWithCoordinate:workingCoordinate]; [tempMine setTite:[mine mineName]]; if ([[mine commodity] isEqualToString:@"Gold"] && [gold == YES]) { [tempMine setAnnotationType:iProspectLiteAnnotationTypeGold]; [mapView addAnnotation:tempMine]; } if([[mine commodity] isEqualToString:@"Silver"] && [silver == YES]) { [tempMine setAnnotationType:iProspectLiteAnnotationTypeSilver]; } if([[mine commodity] isEqualToString:@"Copper"] && [copper == YES]) { [tempMine setAnnotationType:iProspectLiteAnnotationTypeCopper]; } } [mines dealloc]; } where the workingCoordinate.latitude = [[mine latitudeInitial] doubleValue], as well as the longitude, and [mine mineName],it says " No '-latitudeInitiallongitudeInitial' method found" or the mineName/LongitudeInitial. also, it complains about : before ] at all the if statement lines. I don't see any errors, do you?

    Read the article

  • properly format postal address with line breaks [google maps]

    - by munchybunch
    Using V3 of the google maps API, is there any reliable way to format addresses with the line break? By this, I mean something like 1600 Amphitheatre Parkway Mountain View, CA 94043 should be formatted as 1600 Amphitheatre Parkway Mountain View, CA 94043 Looking through the response object from geocoding, there is an address_components array that has, for the above address, 8 components (not all of the components are used for the address): 0: Object long_name: "1600" short_name: "1600" types: Array[1] 0: "street_number" length: 1 1: Object long_name: "Amphitheatre Pkwy" short_name: "Amphitheatre Pkwy" types: Array[1] 0: "route" length: 1 2: Object long_name: "Mountain View" short_name: "Mountain View" types: Array[2] 0: "locality" 1: "political" length: 2 3: Object long_name: "San Jose" short_name: "San Jose" types: Array[2] 0: "administrative_area_level_3" 1: "political" length: 2 4: Object long_name: "Santa Clara" short_name: "Santa Clara" types: Array[2] 0: "administrative_area_level_2" 1: "political" length: 2 5: Object long_name: "California" short_name: "CA" types: Array[2] 0: "administrative_area_level_1" 1: "political" length: 2 6: Object long_name: "United States" short_name: "US" types: Array[2] 0: "country" 1: "political" length: 2 7: Object long_name: "94043" short_name: "94043" types: Array[1] 0: "postal_code" length: 1 I was thinking that you could just combine parts that you want, like sprintf("%s %s<br />%s, %s %s", array[0].short_name, array[1].short_name, array[2].short_name, array[5].short_name, array[7].short_name) [edit]I just realized that sprintf isn't defined by default in JavaScript, so just a concatenation would do I guess.[/edit] But that seems awfully unreliable. Does anyone know the details on the structure of address_components, and if it's reliably similar like that for street addresses in the US? If I wanted to, I guess I could look for the proper types (street_number,route, etc) as well. I'd love it if anyone had a better way than what I"m doing here...

    Read the article

  • Mapping an Array to a Single Row

    - by João Bragança
    I have the following classes: public class InventoryItem { private Usage[] usages = new Usage[12]; virtual public Usage[] Usages { get { return usages; }} virtual public string Name{get;set;} } public class Usage { virtual public double Quantity{get;set;} virtual public string SomethingElse{get;set;} } I know that Usages.Length will always be 12. I think it would be best to store it in the DB like so: Name nvarchar(64), Usage_Quantity_0 float, Usage_SomethingElse_0 nvarchar(16), Usage_Quantity_1 float, Usage_SomethingElse_1 nvarchar(16), ... Usage_Quantity_11 float, Usage_SomethingElse_11 nvarchar(16), How can I get this done?

    Read the article

  • get a array use params

    - by Small Wolf
    Hey,Guys! In rails , I met a question! when i use the multiple select ,i don't know ,how can i get the all parameter values ,it likes in javaEE, String[] strs=request.getParameters("aaa"); so,who can tell me the method in rails to realize the function? Thank you in advance!

    Read the article

  • more ruby way of gsub from array

    - by aharon
    My goal is to let there be x so that x("? world. what ? you say...", ['hello', 'do']) returns "hello world. what do you say...". I have something that works, but seems far from the "Ruby way": def x(str, arr, rep='?') i = 0 query.gsub(rep) { i+=1; arr[i-1] } end Is there a more idiomatic way of doing this? (Let me note that speed is the most important factor, of course.)

    Read the article

  • Properly maintain sorted state of Array/Set

    - by Jeff
    I'm trying to get data out of my MOC and then create some new objects based on those objects, and put it all back together, while keeping my sort state. The securities come out of the MOC in proper order. And everything seems to be fine until I do the assignment to the game at the bottom from setWithArray. The documentation says that setWithArray removed the duplicate objects, if there are any. I'm wonder if that's messing up my data, but I don't see a good alternative. The data is ultimately being pulled out into a UITableView. When I add items to the game manually, then they stay sorted, so I don't think the breaking of the sort is beyond the scope of what I've included here. NSError *error; NSArray *allTheSecurities = [managedObjectContext executeFetchRequest:request error:&error]; if (allTheSecurities == nil) { // Handle the error. } [request release]; /**/ NSLog( @"Enumerate..." ); NSEnumerator *enumerator = [allTheSecurities objectEnumerator]; id anObject; NSMutableArray *portfolioStocks = [[NSMutableArray alloc] init]; while (anObject = [enumerator nextObject]) { NSLog( @"Iteration... %@", [anObject name] ); NSLog( @"Build a stock..." ); PortfolioStocks *this_stock = (PortfolioStocks *)[NSEntityDescription insertNewObjectForEntityForName:@"PortfolioStocks" inManagedObjectContext:context]; NSLog( @"Set a value..." ); [this_stock setSecurity:(Security *)anObject]; [this_stock setQuantity:[NSNumber numberWithInt:0]]; NSLog( @"Add to portfolioStocks..." ); [portfolioStocks addObject:this_stock]; } //Sorted properly up to here! NSLog( @"Add to portfolio..." ); [game setPortfolio:[NSSet setWithArray:portfolioStocks]]; // <-- This is where it's not sorted anymore.

    Read the article

  • How to combine array list string in java ?

    - by tiendv
    I have some arraylist string with keyword inside like that ! A windows is arraylist string with keyword is bold Struct of window : 9 words before + keyword + 9 words after You can see some window overlaping How to i combine that arraylist to receive like that : Thanks

    Read the article

  • Hash Digest / Array Comparison in C#

    - by Erik Karulf
    Hi All, I'm writing an application that needs to verify HMAC-SHA256 checksums. The code I currently have looks something like this: static bool VerifyIntegrity(string secret, string checksum, string data) { // Verify HMAC-SHA256 Checksum byte[] key = System.Text.Encoding.UTF8.GetBytes(secret); byte[] value = System.Text.Encoding.UTF8.GetBytes(data); byte[] checksum_bytes = System.Text.Encoding.UTF8.GetBytes(checksum); using (var hmac = new HMACSHA256(key)) { byte[] expected_bytes = hmac.ComputeHash(value); return checksum_bytes.SequenceEqual(expected_bytes); } } I know that this is susceptible to timing attacks. Is there a message digest comparison function in the standard library? I realize I could write my own time hardened comparison method, but I have to believe that this is already implemented elsewhere.

    Read the article

  • Identifier is undefined

    - by hawk
    I wrote the following code in C++ using VS2012 Express. void ac_search( uint num_patterns, uint pattern_length, const char *patterns, uint num_records, uint record_length, const char *records, int *matches, Node* trie) { // Irrelevant code omitted. } vector<int> ac_benchmark_search( uint num_patterns, uint pattern_length, const char *patterns, uint num_records, uint record_length, const char *records, double &time) { // Prepare the container for the results vector<int> matches(num_records * num_patterns); Trie T; Node* trie = T.addWord(records, num_records, record_length); // error line ac_search(num_patterns, pattern_length, patterns, num_records, record_length, records, matches.data(), trie); // Irrelevant code omitted. return matches; } I get the error identifier "ac_search" is undefined at the function invoking line. I am a bit confused here. because the function ac_search is declared as a global (not inside any container). Why can't I call it at this place? Am I missing something? Update I tried ignore irrelevant code and then included it gradually and found that everything is fine until I include the outer loop of ac_search I get the aforementioned error. here is updated code of the function ac_search: void ac_cpu_string_search(uint num_patterns, uint pattern_length, const char *patterns, uint num_records, uint record_length, const char *records, int *matches, Node* trie) { // Loop over all records //for (uint record_number = 0; record_number < num_records; ++record_number) //{ // // Loop over all patterns for (uint pattern_number = 0; pattern_number < num_patterns; ++pattern_number) { // Execute string search const char *ptr_record = &records[record_number * record_length]; const char *ptr_match = std::strstr(ptr_record, &patterns[pattern_number * pattern_length]); // If pattern was found, then calculate offset, otherwise result is -1 if (ptr_match) { matches[record_number * num_patterns + pattern_number] = static_cast<int>(std::distance(ptr_record, ptr_match)); } else { matches[record_number * num_patterns + pattern_number] = -1; } // } //} } Update 2 I think the error has something to do with the function addWord which belongs to the class Trie. When I commented out this function, I did not get the error anymore. Node* Trie::addWord(const char *records, uint num_records, uint record_length) { // Loop over all records for (uint record_number = 0; record_number < num_records; ++record_number) { const char *ptr_record = &records[record_number * record_length]; string s = ptr_record; Node* current = root; if ( s.length() == 0 ) { current->setWordMarker(); // an empty word return; } for ( int i = 0; i < s.length(); i++ ) { Node* child = current->findChild(s[i]); if ( child != NULL ) { current = child; } else { Node* tmp = new Node(); tmp->setContent(s[i]); current->appendChild(tmp); current = tmp; } if ( i == s.length() - 1 ) current->setWordMarker(); } return current; } void ac_search( uint num_patterns, uint pattern_length, const char *patterns, uint num_records, uint record_length, const char *records, int *matches, Node* trie) { // Irrelevant code omitted. } vector<int> ac_benchmark_search( uint num_patterns, uint pattern_length, const char *patterns, uint num_records, uint record_length, const char *records, double &time) { // Prepare the container for the results vector<int> matches(num_records * num_patterns); Trie T; Node* trie = T.addWord(records, num_records, record_length); // error line ac_search(num_patterns, pattern_length, patterns, num_records, record_length, records, matches.data(), trie); // Irrelevant code omitted. return matches; }

    Read the article

  • PHP array problem?

    - by needHeLp
    I'm new to PHP and I want this code <option value="" disabled="disabled">-------------</option> to be disabled when the php code is building my select list of options. How can I fix my php code so it will always set that specific option to disabled? Here is part of the php code. echo '<select name="country" id="country" size="20">' . "\n"; foreach($countries as $option) { if ($option == $state) { echo '<option value="' . $option . '" selected="selected">' . $option . '</option>' . "\n"; } else { echo '<option value="'. $option . '">' . $option . '</option>'."\n"; } } echo '</select>'; Here is part of the HTML code that is outputed from the php code. <option value="United States">United States</option> <option value="Australia">Australia</option> <option value="Canada">Canada</option> <option value="United Kingdom">United Kingdom</option> <option value="India">India</option> <option value="" disabled="disabled">-------------</option> <option value="Afghanistan">Afghanistan</option> <option value="Aland Islands">Aland Islands</option> <option value="Albania">Albania</option> <option value="Algeria">Algeria</option> <option value="American Samoa">American Samoa</option> <option value="Andorra">Andorra</option>

    Read the article

  • Hashtable with int array as key in java

    - by Niels Hansen
    Hey! I'm trying to make a hashtable in java where the keys are int[], but it dosen't work. I have made a little test program to show my problem: public class test{ public static void main(String[] args){ int[] test0 = {1,1}; int[] test1 = {1,1}; Hashtable<int[], String> ht = new Hashtable<int[], String>(); String s0 = "foo"; ht.put(test0, s0); System.out.println("the result from ht.get(test1)"); System.out.println(ht.get(test1)); System.out.println("the result from ht.get(test0)"); System.out.println(ht.get(test0)); } } My intention is that both ht.get calles should return the same result, since the two arrays are equal, but they dont. Here is the result from running the code: the result from ht.get(test1) null the result from ht.get(test0) foo Am I missing something here or is it just impossible to use int[] as keys in a hastable?

    Read the article

  • Array performance question

    - by Konrad
    I am very familiar with STL vector (and other container) performance guarantees, however I can't seem to find anything concrete about plain arrays. Are pointer arithmetic and [] methods constant or linear time?

    Read the article

  • Perl - how to get the number of elements in a list (not a named array)

    - by NXT
    Hi Everyone, I'm trying to get a block of code down to one line. I need a way to get the number of items in a list. My code currently looks like this: # Include the lib directory several levels up from this directory my @ary = split('/', $Bin); my @ary = @ary[0 .. $#ary-4]; my $res = join '/',@ary; lib->import($res.'/lib'); That's great but I'd like to make that one line, something like this: lib->import( join('/', ((split('/', $Bin)) [0 .. $#ary-4])) ); But of course the syntax $#ary is meaningless in the above line. Is there equivalent way to get the number of elements in an anonymous list? Thanks! PS: The reason for consolidating this is that it will be in the header of a bunch of perl scripts that are ancillary to the main application, and I want this little incantation to be more cut & paste proof.

    Read the article

  • Reading in a 5000 line text file on the Iphone

    - by howsyourface
    Gday, I am trying to create a tiled map for my game, i have had this previously working using other xml methods but i had memory leaks and all sorts of errors. However i had a map load time of about 2.5 - 3 seconds. So i rewrote all of the code using NSMutableStrings and NSStrings. After my best attempt at optomizing it i had a map load time of 10 - 11 seconds, which is far too slow. So i have now rewritten the code using char* arrays, only to now have a load time of 18 seconds -_-. Here is the latest code, i don't know much c so i could have easily botched the whole thing up. FILE* file = fopen(a, "r"); fseek(file, 0L, SEEK_END); length = ftell(file); fseek(file,0L, SEEK_SET); char fileText[length +1]; char buffer[1024];// = malloc(1024); while(fgets(buffer, 1024, file) != NULL) { strncat(fileText, buffer, strlen(buffer)); } fclose(file); [self parseMapFile:fileText]; - (void)parseMapFile:(char*)tiledXML { currentLayerID = 0; currentTileSetID = 0; tileX = 0; tileY = 0; int tmpGid; NSString* tmpName; int tmpTileWidth; int tmpTileHeight; int tilesetCounter = 0; NSString* tmpLayerName; int tmpLayerHeight; int tmpLayerWidth; int layerCounter = 0; tileX = 0; tileY = 0; int tmpFirstGid = 0; int x; int index; char* r; int counter = 0; while ((x = [self findSubstring:tiledXML substring:"\n"]) != 0) { counter ++; char result[x + 1]; r = &result[0]; [self substringIndex:tiledXML index:x newArray:result]; tiledXML += x+2; index = 0; if (counter == 1) { continue; } else if (counter == 2) { char result1[5]; index = [self getStringBetweenStrings:r substring1:"th=\"" substring2:"\"" newArray:result1]; if (r != 0); mapWidth = atoi(result1); r += index +1; index = 0; index = [self getStringBetweenStrings:r substring1:"ht=\"" substring2:"\"" newArray:result1]; if (r != 0); mapHeight = atoi(result1); r += index +1; index = 0; index = [self getStringBetweenStrings:r substring1:"th=\"" substring2:"\"" newArray:result1]; if (r != 0); tileWidth = atoi(result1); r += index +1; index = 0; index = [self getStringBetweenStrings:r substring1:"ht=\"" substring2:"\"" newArray:result1]; if (r != 0); tileHeight = atoi(result1); continue; } char result2[50]; char result3[3]; if ((index = [self getStringBetweenStrings:r substring1:" gid=\"" substring2:"\"" newArray:result3]) != 0) { tmpGid = atoi(result3); free(result2); if(tmpGid == 0) { [currentLayer addTileAtX:tileX y:tileY tileSetID:-1 tileID:0 globalID:0]; } else { [currentLayer addTileAtX:tileX y:tileY tileSetID:[currentTileSet tileSetID] tileID:tmpGid - [currentTileSet firstGID] globalID:tmpGid]; } tileX ++; if (tileX > [currentLayer layerWidth]-1) { tileY ++; tileX = 0; } } else if ((index = [self getStringBetweenStrings:r substring1:"tgid=\"" substring2:"\"" newArray:result2]) != 0) { tmpFirstGid = atoi(result2); r += index +1; index = 0; index = [self getStringBetweenStrings:r substring1:"me=\"" substring2:"\"" newArray:result2]; if (r != 0); tmpName = [NSString stringWithUTF8String:result2]; r += index +1; index = 0; index = [self getStringBetweenStrings:r substring1:"th=\"" substring2:"\"" newArray:result2]; if (r != 0); tmpTileWidth = atoi(result2); r += index +1; index = 0; index = [self getStringBetweenStrings:r substring1:"ht=\"" substring2:"\"" newArray:result2]; if (r != 0); tmpTileHeight = atoi(result2); } else if ((index = [self getStringBetweenStrings:r substring1:"rce=\"" substring2:"\"" newArray:result2]) != 0) { currentTileSet = [[TileSet alloc] initWithImageNamed:[NSString stringWithUTF8String:result2] name:tmpName tileSetID:tilesetCounter firstGID:tmpFirstGid tileWidth:tmpTileWidth tileHeight:tmpTileHeight spacing:0]; [tileSets addObject:currentTileSet]; [currentTileSet release]; tilesetCounter ++; } else if ((index = [self getStringBetweenStrings:r substring1:"r name=\"" substring2:"\"" newArray:result2]) != 0) { tileX = 0; tileY = 0; tmpLayerName = [NSString stringWithUTF8String:result2]; r += index +1; index = 0; index = [self getStringBetweenStrings:r substring1:"th=\"" substring2:"\"" newArray:result2]; if (r != 0); tmpLayerWidth = atoi(result2); r += index +1; index = 0; index = [self getStringBetweenStrings:r substring1:"ht=\"" substring2:"\"" newArray:result2]; if (r != 0); tmpLayerHeight = atoi(result2); currentLayer = [[Layer alloc] initWithName:tmpLayerName layerID:layerCounter layerWidth:tmpLayerWidth layerHeight:tmpLayerHeight]; [layers addObject:currentLayer]; [currentLayer release]; layerCounter ++; } } } -(void)substringIndex:(char*)c index:(int)x newArray:(char*)result { result[0] = 0; for (int i = 0; i < strlen(c); i++) { result[i] = c[i]; if (i == x) { result[i+1] = '\0'; break; } } } -(int)findSubstring:(char*)c substring:(char*)s { int sCounter = 0; int index = 0; int d; for (int i = 0; i < strlen(c); i ++) { if (i > 500)//max line size break; if (c[i] == s[sCounter]) { d = strlen(s); sCounter ++; if (d > sCounter) { } else { index = i - (d); break; } } else sCounter = 0; } return index; } -(int)getStringBetweenStrings:(char*)c substring1:(char*)s substring2:(char*)s2 newArray:(char*)result { int sCounter = 0; int sCounter2 = 0; int index = 0; int index2 = 0; int d; for (int i = 0; i < strlen(c); i ++) { if (index != 0) { if (c[i] == s2[sCounter2]) { d = strlen(s2); sCounter2 ++; if (d > sCounter2) { } else { index2 = i - (d); break; } } else sCounter2 = 0; } else { if (c[i] == s[sCounter]) { d = strlen(s); sCounter ++; if (d > sCounter) { } else { index = i; } } else sCounter = 0; } } if (index != 0 && index2 != 0) [self substringIndex:(c + index+1) index:index2-index-1 newArray:result]; return index; } (I know it's a lot of code to be putting in here) I thought the by using basic char arrays i could drastically increase the performance, at least over the initial node based code that i was replacing. Thanks for all your efforts.

    Read the article

  • How do I return an array from a method?

    - by dwwilson66
    I'm trying to create a deck of cards for my homework. Code is posted below. I need to create four sets of cards (the four suits) and am create a multidimensional array. When I print the results instead of trying to pass the array, I can see that the data in the array is as expected. However, when I try to pass the array card, I get an error cannot find symbol. I've got this modeled after texbook and Java tutorial examples, and I need some help figuring out what I'm missing. I've over-documented to give an idea of how I'm thinking this SHOULD work...please let me know where I've gone horribly wrong in my understanding. import java.util.*; import java.lang.*; // public class CardGame { public static int[][] main(String[] args) { int[][] startDeck = deckOfCards(); /* cast new deck as int[][], calling method deckOfCards System.out.println(" /// from array: " + Arrays.deepToString(startDeck)); } public static int[][] deckOfCards() /* method to return a multi-dimensional array */ { int rank; int suit; for(rank=1;rank<14;rank++) /* cards 1 - 13 .... */ { for(suit=1;suit<5;suit++) /* suits 1 - 4 .... */ { int[][] card = new int[][] /* define a new card... */ { {rank,suit} /* with rank/suit from for... loops */ }; System.out.println(" /// from array: " + Arrays.deepToString(card)); } } return card; /* Error: cannot find symbol } }

    Read the article

< Previous Page | 155 156 157 158 159 160 161 162 163 164 165 166  | Next Page >